Bug 546087 - [SysML 1.6] Create the SysML 1.6 plug-ins

Create the SysML1.6 plug-ins and contents.

Change-Id: Iac5aea1b1e2038f3704b81723c41d4c835e93bf7
Signed-off-by: Nicolas FAUVERGUE <nicolas.fauvergue@cea.fr>
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..e34ec27
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,68 @@
+# Handle line endings automatically for files detected as text
+# and leave all files detected as binary untouched.
+* text=auto
+
+#
+# The above will handle all files NOT found below
+#
+# These files are text and should be normalized (Convert crlf => lf)
+*.classpath                      text
+*.configuration                  text
+*.creationmenumodel              text
+*.css                            text
+*.ctx                            text
+*.df                             text
+*.di                             text
+*.ecore                          text
+*.elementtypesconfigurations     text
+*.expansionmodel                 text
+*.fml                            text
+*.genmodel                       text
+*.htm                            text
+*.html                           text
+*.ini                            text
+*.java                           text
+*.js                             text
+*.json                           text
+*.jsp                            text
+*.jspf                           text
+*.LICENSE                        text
+*.md                             text
+*.mediawiki                      text
+*.MF                             text
+*.nattableconfiguration          text
+*.notation                       text
+*.paletteconfiguration           text
+*.prefs                          text
+*.product                        text
+*.project                        text
+*.properties                     text
+*.sh                             text
+*.suite                          text
+*.svg                            text
+*.test                           text
+*.tld                            text
+*.tsv                            text
+*.txt                            text
+*.uml                            text
+*.xmi                            text
+*.xml                            text
+*.xwt                            text
+
+# These files are binary and should be left untouched
+# (binary is a macro for -text -diff)
+*.bmp           binary
+*.class         binary
+*.dll           binary
+*.ear           binary
+*.gif           binary
+*.ico           binary
+*.jar           binary
+*.jpg           binary
+*.jpeg          binary
+*.pdf           binary
+*.png           binary
+*.so            binary
+*.svg           binary
+*.war           binary
+
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..214263b
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,15 @@
+bin/
+target/
+*.java._trace
+*.pyc
+.DS_Store
+*.xtendbin
+*~
+# Workspace metadata folder created by Oomph when launching tests.
+tests/**/.metadata/
+**/src/site/resources/images/rcptt-screenshots
+# sonarlint temporary directory
+sonarlint/
+# Files and directory used by RcpTT
+workspace/
+*.log
\ No newline at end of file
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..d96286c
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,40 @@
+Contributing to Papyrus SysML 1.6
+==================================
+
+Thanks for your interest in this project.
+
+Project description:
+--------------------
+
+A DSML for the [SysML 1.6 OMG](http://www.omg.org/spec/SysML/1.6/) norm based upon the [Eclipse Papyrus project](https://projects.eclipse.org/projects/modeling.mdt.papyrus).
+
+Create a new [bug](https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Papyrus&component=SysML):
+-----------------
+
+Be sure to search for existing bugs before you create another one. Remember that contributions are always welcome!
+
+Search for [bugs](https://bugs.eclipse.org/bugs/buglist.cgi?product=Papyrus&component=SysML):
+----------------
+
+This project uses Bugzilla to track ongoing development and issues.
+
+Contributor License Agreement:
+------------------------------
+
+Before your contribution can be accepted by the project, you need to create and electronically 
+sign the Eclipse Foundation Contributor License Agreement [(CLA)](http://www.eclipse.org/legal/CLA.php).
+
+Contact:
+--------
+
+Contact the project developers and users via the project's ["user" list](https://dev.eclipse.org/mailman/listinfo/papyrus-sysml-users/).
+
+Developer resources:
+--------------------
+
+ * Check the README.md file for developing information
+ * Continuous integration with [Hudson](https://hudson.eclipse.org/papyrus/)
+ * Contribution review with [Gerrit](https://git.eclipse.org/)
+ * Code quality with [SonarQube](https://dev.eclipse.org/sonar/dashboard/index/113161)
+
+ 
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..d3087e4
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,277 @@
+Eclipse Public License - v 2.0
+
+    THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+    PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION
+    OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+  a) in the case of the initial Contributor, the initial content
+     Distributed under this Agreement, and
+
+  b) in the case of each subsequent Contributor:
+     i) changes to the Program, and
+     ii) additions to the Program;
+  where such changes and/or additions to the Program originate from
+  and are Distributed by that particular Contributor. A Contribution
+  "originates" from a Contributor if it was added to the Program by
+  such Contributor itself or anyone acting on such Contributor's behalf.
+  Contributions do not include changes or additions to the Program that
+  are not Modified Works.
+
+"Contributor" means any person or entity that Distributes the Program.
+
+"Licensed Patents" mean patent claims licensable by a Contributor which
+are necessarily infringed by the use or sale of its Contribution alone
+or when combined with the Program.
+
+"Program" means the Contributions Distributed in accordance with this
+Agreement.
+
+"Recipient" means anyone who receives the Program under this Agreement
+or any Secondary License (as applicable), including Contributors.
+
+"Derivative Works" shall mean any work, whether in Source Code or other
+form, that is based on (or derived from) the Program and for which the
+editorial revisions, annotations, elaborations, or other modifications
+represent, as a whole, an original work of authorship.
+
+"Modified Works" shall mean any work in Source Code or other form that
+results from an addition to, deletion from, or modification of the
+contents of the Program, including, for purposes of clarity any new file
+in Source Code form that contains any contents of the Program. Modified
+Works shall not include works that contain only declarations,
+interfaces, types, classes, structures, or files of the Program solely
+in each case in order to link to, bind by name, or subclass the Program
+or Modified Works thereof.
+
+"Distribute" means the acts of a) distributing or b) making available
+in any manner that enables the transfer of a copy.
+
+"Source Code" means the form of a Program preferred for making
+modifications, including but not limited to software source code,
+documentation source, and configuration files.
+
+"Secondary License" means either the GNU General Public License,
+Version 2.0, or any later versions of that license, including any
+exceptions or additional permissions as identified by the initial
+Contributor.
+
+2. GRANT OF RIGHTS
+
+  a) Subject to the terms of this Agreement, each Contributor hereby
+  grants Recipient a non-exclusive, worldwide, royalty-free copyright
+  license to reproduce, prepare Derivative Works of, publicly display,
+  publicly perform, Distribute and sublicense the Contribution of such
+  Contributor, if any, and such Derivative Works.
+
+  b) Subject to the terms of this Agreement, each Contributor hereby
+  grants Recipient a non-exclusive, worldwide, royalty-free patent
+  license under Licensed Patents to make, use, sell, offer to sell,
+  import and otherwise transfer the Contribution of such Contributor,
+  if any, in Source Code or other form. This patent license shall
+  apply to the combination of the Contribution and the Program if, at
+  the time the Contribution is added by the Contributor, such addition
+  of the Contribution causes such combination to be covered by the
+  Licensed Patents. The patent license shall not apply to any other
+  combinations which include the Contribution. No hardware per se is
+  licensed hereunder.
+
+  c) Recipient understands that although each Contributor grants the
+  licenses to its Contributions set forth herein, no assurances are
+  provided by any Contributor that the Program does not infringe the
+  patent or other intellectual property rights of any other entity.
+  Each Contributor disclaims any liability to Recipient for claims
+  brought by any other entity based on infringement of intellectual
+  property rights or otherwise. As a condition to exercising the
+  rights and licenses granted hereunder, each Recipient hereby
+  assumes sole responsibility to secure any other intellectual
+  property rights needed, if any. For example, if a third party
+  patent license is required to allow Recipient to Distribute the
+  Program, it is Recipient's responsibility to acquire that license
+  before distributing the Program.
+
+  d) Each Contributor represents that to its knowledge it has
+  sufficient copyright rights in its Contribution, if any, to grant
+  the copyright license set forth in this Agreement.
+
+  e) Notwithstanding the terms of any Secondary License, no
+  Contributor makes additional grants to any Recipient (other than
+  those set forth in this Agreement) as a result of such Recipient's
+  receipt of the Program under the terms of a Secondary License
+  (if permitted under the terms of Section 3).
+
+3. REQUIREMENTS
+
+3.1 If a Contributor Distributes the Program in any form, then:
+
+  a) the Program must also be made available as Source Code, in
+  accordance with section 3.2, and the Contributor must accompany
+  the Program with a statement that the Source Code for the Program
+  is available under this Agreement, and informs Recipients how to
+  obtain it in a reasonable manner on or through a medium customarily
+  used for software exchange; and
+
+  b) the Contributor may Distribute the Program under a license
+  different than this Agreement, provided that such license:
+     i) effectively disclaims on behalf of all other Contributors all
+     warranties and conditions, express and implied, including
+     warranties or conditions of title and non-infringement, and
+     implied warranties or conditions of merchantability and fitness
+     for a particular purpose;
+
+     ii) effectively excludes on behalf of all other Contributors all
+     liability for damages, including direct, indirect, special,
+     incidental and consequential damages, such as lost profits;
+
+     iii) does not attempt to limit or alter the recipients' rights
+     in the Source Code under section 3.2; and
+
+     iv) requires any subsequent distribution of the Program by any
+     party to be under a license that satisfies the requirements
+     of this section 3.
+
+3.2 When the Program is Distributed as Source Code:
+
+  a) it must be made available under this Agreement, or if the
+  Program (i) is combined with other material in a separate file or
+  files made available under a Secondary License, and (ii) the initial
+  Contributor attached to the Source Code the notice described in
+  Exhibit A of this Agreement, then the Program may be made available
+  under the terms of such Secondary Licenses, and
+
+  b) a copy of this Agreement must be included with each copy of
+  the Program.
+
+3.3 Contributors may not remove or alter any copyright, patent,
+trademark, attribution notices, disclaimers of warranty, or limitations
+of liability ("notices") contained within the Program from any copy of
+the Program which they Distribute, provided that Contributors may add
+their own appropriate notices.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain responsibilities
+with respect to end users, business partners and the like. While this
+license is intended to facilitate the commercial use of the Program,
+the Contributor who includes the Program in a commercial product
+offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes
+the Program in a commercial product offering, such Contributor
+("Commercial Contributor") hereby agrees to defend and indemnify every
+other Contributor ("Indemnified Contributor") against any losses,
+damages and costs (collectively "Losses") arising from claims, lawsuits
+and other legal actions brought by a third party against the Indemnified
+Contributor to the extent caused by the acts or omissions of such
+Commercial Contributor in connection with its distribution of the Program
+in a commercial product offering. The obligations in this section do not
+apply to any claims or Losses relating to any actual or alleged
+intellectual property infringement. In order to qualify, an Indemnified
+Contributor must: a) promptly notify the Commercial Contributor in
+writing of such claim, and b) allow the Commercial Contributor to control,
+and cooperate with the Commercial Contributor in, the defense and any
+related settlement negotiations. The Indemnified Contributor may
+participate in any such claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those performance
+claims and warranties, and if a court requires any other Contributor to
+pay any damages as a result, the Commercial Contributor must pay
+those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
+PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS"
+BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR
+IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF
+TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR
+PURPOSE. Each Recipient is solely responsible for determining the
+appropriateness of using and distributing the Program and assumes all
+risks associated with its exercise of rights under this Agreement,
+including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs
+or equipment, and unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT
+PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS
+SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST
+PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE
+EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further
+action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that the
+Program itself (excluding combinations of the Program with other software
+or hardware) infringes such Recipient's patent(s), then such Recipient's
+rights granted under Section 2(b) shall terminate as of the date such
+litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of
+time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use
+and distribution of the Program as soon as reasonably practicable.
+However, Recipient's obligations under this Agreement and any licenses
+granted by Recipient relating to the Program shall continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement,
+but in order to avoid inconsistency the Agreement is copyrighted and
+may only be modified in the following manner. The Agreement Steward
+reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement
+Steward has the right to modify this Agreement. The Eclipse Foundation
+is the initial Agreement Steward. The Eclipse Foundation may assign the
+responsibility to serve as the Agreement Steward to a suitable separate
+entity. Each new version of the Agreement will be given a distinguishing
+version number. The Program (including Contributions) may always be
+Distributed subject to the version of the Agreement under which it was
+received. In addition, after a new version of the Agreement is published,
+Contributor may elect to Distribute the Program (including its
+Contributions) under the new version.
+
+Except as expressly stated in Sections 2(a) and 2(b) above, Recipient
+receives no rights or licenses to the intellectual property of any
+Contributor under this Agreement, whether expressly, by implication,
+estoppel or otherwise. All rights in the Program not expressly granted
+under this Agreement are reserved. Nothing in this Agreement is intended
+to be enforceable by any entity that is not a Contributor or Recipient.
+No third-party beneficiary rights are created under this Agreement.
+
+Exhibit A - Form of Secondary Licenses Notice
+
+"This Source Code may also be made available under the following 
+Secondary Licenses when the conditions for such availability set forth 
+in the Eclipse Public License, v. 2.0 are satisfied: {name license(s),
+version(s), and exceptions or additional permissions here}."
+
+  Simply including a copy of this Agreement, including this Exhibit A
+  is not sufficient to license the Source Code under Secondary Licenses.
+
+  If it is not possible or desirable to put the notice in a particular
+  file, then You may include the notice in a location (such as a LICENSE
+  file in a relevant directory) where a recipient would be likely to
+  look for such a notice.
+
+  You may add additional accurate notices of copyright ownership.
diff --git a/features/org.eclipse.papyrus.sysml16.feature/.project b/features/org.eclipse.papyrus.sysml16.feature/.project
new file mode 100644
index 0000000..9806cf6
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.sysml16.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.m2e.core.prefs b/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/features/org.eclipse.papyrus.sysml16.feature/build.properties b/features/org.eclipse.papyrus.sysml16.feature/build.properties
new file mode 100644
index 0000000..b3a611b
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+               feature.properties
diff --git a/features/org.eclipse.papyrus.sysml16.feature/feature.properties b/features/org.eclipse.papyrus.sysml16.feature/feature.properties
new file mode 100644
index 0000000..9d274e5
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/feature.properties
@@ -0,0 +1,8 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Papyrus SysML 1.6 Feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project 
+
diff --git a/features/org.eclipse.papyrus.sysml16.feature/feature.xml b/features/org.eclipse.papyrus.sysml16.feature/feature.xml
new file mode 100644
index 0000000..cac2942
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/feature.xml
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.sysml16.feature"
+      label="%featureName"
+      version="1.0.0.qualifier"
+      provider-name="%providerName"
+      plugin="org.eclipse.papyrus.sysml16.ui"
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.1">
+
+   <description url="https://eclipse.org/papyrus/">
+      This feature enables to create, manage, validate SysML 1.6 models. It contains diagram bundles (BDD, IBD, PAR, REQ), tables bundles and also all user interface elements.
+   </description>
+
+   <copyright url="https://www.eclipse.org/legal/epl-2.0/">
+      Copyright (c) 2019 CEA LIST
+ All rights reserved.   This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License 2.0
+ which accompanies this distribution, and is available at
+ https://www.eclipse.org/legal/epl-2.0/ 
+  
+ SPDX-License-Identifier: EPL-2.0
+   </copyright>
+
+   <requires>
+      <import feature="org.eclipse.papyrus.sdk.feature" version="4.0.0" match="compatible"/>
+   </requires>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.diagram.common"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.diagram.blockdefinition"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.diagram.internalblock"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.diagram.parametric"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.diagram.requirement"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.edit"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.service.types"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.validation"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.nattable.allocation"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.nattable.common"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.nattable.requirement"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.nattable.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.architecture"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.modelexplorer"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/features/org.eclipse.papyrus.sysml16.feature/pom.xml b/features/org.eclipse.papyrus.sysml16.feature/pom.xml
new file mode 100644
index 0000000..ed4b045
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.sysml</groupId>
+		<artifactId>org.eclipse.papyrus.sysml16.features</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>
+	<artifactId>org.eclipse.papyrus.sysml16.feature</artifactId>
+	<packaging>eclipse-feature</packaging>
+	<name>org.eclipse.papyrus.sysml16.feature</name>
+	<description>This plugin gather all SysML 1.6 plugins to define a fully functionnal DSML editor.</description>
+</project>
\ No newline at end of file
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/.project b/features/org.eclipse.papyrus.sysml16.rcp.feature/.project
new file mode 100644
index 0000000..4e0c9af
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.sysml16.rcp.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.m2e.core.prefs b/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/build.properties b/features/org.eclipse.papyrus.sysml16.rcp.feature/build.properties
new file mode 100644
index 0000000..b3a611b
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+               feature.properties
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.properties b/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.properties
new file mode 100644
index 0000000..7a292c5
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.properties
@@ -0,0 +1,7 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Papyrus SysML 1.6 RCP Feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project 
\ No newline at end of file
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.xml b/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.xml
new file mode 100644
index 0000000..482f5af
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/feature.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.sysml16.rcp.feature"
+      label="%featureName"
+      version="1.0.0.qualifier"
+      provider-name="%providerName"
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.1">
+
+   <description url="https://eclipse.org/papyrus/">
+      This feature defines the Rich Client Platform dedicated to SysML 1.6 
+   </description>
+
+   <copyright url="https://www.eclipse.org/legal/epl-2.0/">
+      Copyright (c) 2019 CEA LIST
+ All rights reserved.   This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License 2.0
+ which accompanies this distribution, and is available at
+ https://www.eclipse.org/legal/epl-2.0/ 
+  
+ SPDX-License-Identifier: EPL-2.0
+   </copyright>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.rcp"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/features/org.eclipse.papyrus.sysml16.rcp.feature/pom.xml b/features/org.eclipse.papyrus.sysml16.rcp.feature/pom.xml
new file mode 100644
index 0000000..8e73c8b
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.rcp.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.sysml</groupId>
+		<artifactId>org.eclipse.papyrus.sysml16.features</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>
+	<artifactId>org.eclipse.papyrus.sysml16.rcp.feature</artifactId>
+	<packaging>eclipse-feature</packaging>
+	<name>org.eclipse.papyrus.sysml16.rcp.feature</name>
+	<description>This plugin packages the rcp in a feature to be used as it in the SysML 1.6 product.</description>
+</project>
\ No newline at end of file
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.project b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.project
new file mode 100644
index 0000000..4e95fea
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.sysml16.requirements.extension.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.core.resources.prefs b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.m2e.core.prefs b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/build.properties b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/build.properties
new file mode 100644
index 0000000..b3a611b
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+               feature.properties
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.properties b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.properties
new file mode 100644
index 0000000..4e39621
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.properties
@@ -0,0 +1,8 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Papyrus SysML 1.6 Requirements Extension Feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project 
+
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.xml b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.xml
new file mode 100644
index 0000000..5183b99
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/feature.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.sysml16.requirements.extension.feature"
+      label="%featureName"
+      version="1.0.0.qualifier"
+      provider-name="%providerName"
+      plugin="org.eclipse.papyrus.sysml16.requirements.extension.ui"
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.1">
+
+   <description url="https://eclipse.org/papyrus/">
+      This feature enables to create, manage, validate SysML 1.6 Requirements Extension models.
+   </description>
+
+   <copyright url="https://www.eclipse.org/legal/epl-2.0/">
+      Copyright (c) 2019 CEA LIST
+ All rights reserved.   This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License 2.0
+ which accompanies this distribution, and is available at
+ https://www.eclipse.org/legal/epl-2.0/ 
+  
+ SPDX-License-Identifier: EPL-2.0
+   </copyright>
+
+   <requires>
+      <import feature="org.eclipse.papyrus.sdk.feature" version="4.0.0" match="compatible"/>
+      <import feature="org.eclipse.papyrus.sysml16.feature" version="0.0.0" match="compatible"/>
+   </requires>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.requirements.extension"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.requirements.extension.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.requirements.extension.edit"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+
+   <plugin
+         id="org.eclipse.papyrus.sysml16.requirements.extension.validation"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/pom.xml b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/pom.xml
new file mode 100644
index 0000000..54dec54
--- /dev/null
+++ b/features/org.eclipse.papyrus.sysml16.requirements.extension.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.sysml</groupId>
+		<artifactId>org.eclipse.papyrus.sysml16.features</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>
+	<artifactId>org.eclipse.papyrus.sysml16.requirements.extension.feature</artifactId>
+	<packaging>eclipse-feature</packaging>
+	<name>org.eclipse.papyrus.sysml16.requirements.extension.feature</name>
+	<description>This plugin gather all SysML 1.6 Requirements Extension plugins.</description>
+</project>
\ No newline at end of file
diff --git a/features/pom.xml b/features/pom.xml
new file mode 100644
index 0000000..08db5e5
--- /dev/null
+++ b/features/pom.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<artifactId>org.eclipse.papyrus.sysml16.parent</artifactId>
+		<groupId>org.eclipse.papyrus.sysml</groupId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>	
+	<artifactId>org.eclipse.papyrus.sysml16.features</artifactId>
+	<packaging>pom</packaging>
+	<name>SysML Features</name>
+	<description>SysML Features.</description>
+	<modules>
+		<module>org.eclipse.papyrus.sysml16.feature</module>
+		<module>org.eclipse.papyrus.sysml16.requirements.extension.feature</module>
+	</modules>
+	
+	<profiles>
+		<profile>
+			<id>product</id>
+			<activation>
+				<activeByDefault>false</activeByDefault>
+			</activation>
+			<modules>
+				<module>org.eclipse.papyrus.sysml16.rcp.feature</module>
+			</modules>
+		</profile>
+	</profiles>
+</project>
diff --git a/plugins/.settings/org.eclipse.core.resources.prefs b/plugins/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/plugins/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/core/.settings/org.eclipse.core.resources.prefs b/plugins/core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/plugins/core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.classpath b/plugins/core/org.eclipse.papyrus.sysml16.edit/.classpath
new file mode 100644
index 0000000..5814bdf
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.classpath
@@ -0,0 +1,8 @@
+<?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/JavaSE-1.8"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src-gen/"/>
+	<classpathentry kind="src" path="src/"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.project b/plugins/core/org.eclipse.papyrus.sysml16.edit/.project
new file mode 100644
index 0000000..2ecbc26
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.project
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.sysml16.edit</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>
+		<buildCommand>
+			<name>org.eclipse.m2e.core.maven2Builder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.m2e.core.maven2Nature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.PluginNature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.resources.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..896a9a5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.runtime.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 0000000..5a0ad22
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.core.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..2411532
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,294 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.ui.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..ba7542e
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.m2e.core.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.m2e.core.prefs
new file mode 100644
index 0000000..f897a7f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@
+activeProfiles=
+eclipse.preferences.version=1
+resolveWorkspaceProjects=true
+version=1
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.pde.api.tools.prefs b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100644
index 0000000..b2260f8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/META-INF/MANIFEST.MF b/plugins/core/org.eclipse.papyrus.sysml16.edit/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..4637c9e
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,32 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.sysml16.edit;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin$Implementation
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.eclipse.papyrus.sysml16.edit.provider,
+ org.eclipse.papyrus.sysml16.activities.provider,
+ org.eclipse.papyrus.sysml16.allocations.provider,
+ org.eclipse.papyrus.sysml16.blocks.provider,
+ org.eclipse.papyrus.sysml16.constraintblocks.provider,
+ org.eclipse.papyrus.sysml16.deprecatedelements.provider,
+ org.eclipse.papyrus.sysml16.modelelements.provider,
+ org.eclipse.papyrus.sysml16.portsandflows.provider,
+ org.eclipse.papyrus.sysml16.provider,
+ org.eclipse.papyrus.sysml16.requirements.provider
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
+ org.eclipse.papyrus.sysml16;bundle-version="1.0.0";visibility:=reexport,
+ org.eclipse.emf.edit;bundle-version="[2.11.1,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="[2.11.2,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore.edit;bundle-version="[2.9.0,3.0.0)";visibility:=reexport,
+ org.eclipse.uml2.uml.profile.standard;bundle-version="[1.0.100,2.0.0)";visibility:=reexport,
+ org.eclipse.uml2.types;bundle-version="[2.0.0,3.0.0)";visibility:=reexport,
+ org.eclipse.uml2.uml;bundle-version="[5.1.0,6.0.0)";visibility:=reexport,
+ org.eclipse.uml2.uml.edit;bundle-version="[5.1.1,6.0.0)";visibility:=reexport,
+ org.eclipse.uml2.common.edit;bundle-version="[2.1.0,3.0.0)";visibility:=reexport
+Bundle-ActivationPolicy: lazy
+Automatic-Module-Name: org.eclipse.papyrus.sysml16.edit
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/about.html b/plugins/core/org.eclipse.papyrus.sysml16.edit/about.html
new file mode 100644
index 0000000..164f781
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/about.html
@@ -0,0 +1,36 @@
+<!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>November 30, 2017</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 2.0 (&quot;EPL&quot;). A copy of the EPL is
+		available at <a href="http://www.eclipse.org/legal/epl-2.0">http://www.eclipse.org/legal/epl-2.0</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>
\ No newline at end of file
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/build.properties b/plugins/core/org.eclipse.papyrus.sysml16.edit/build.properties
new file mode 100644
index 0000000..f046783
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/build.properties
@@ -0,0 +1,20 @@
+# Copyright (c) 2015 CEA LIST.
+# 
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License 2.0
+#  which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/ 
+# 
+#  SPDX-License-Identifier: EPL-2.0
+
+bin.includes = .,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties,\
+               about.html,\
+               icons/
+jars.compile.order = .
+source.. = src-gen/,\
+           src/
+output.. = target/classes/
+src.includes = about.html
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AbstractRequirement.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AbstractRequirement.gif
new file mode 100644
index 0000000..b0a67f7
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AbstractRequirement.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AcceptChangeStructuralFeatureEventAction.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AcceptChangeStructuralFeatureEventAction.gif
new file mode 100644
index 0000000..5a2faef
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AcceptChangeStructuralFeatureEventAction.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AddFlowPropertyValueOnNestedPortAction.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AddFlowPropertyValueOnNestedPortAction.gif
new file mode 100644
index 0000000..28a897e
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AddFlowPropertyValueOnNestedPortAction.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AdjunctProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AdjunctProperty.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AdjunctProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocate.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocate.gif
new file mode 100644
index 0000000..a4a2536
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocate.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AllocateActivityPartition.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AllocateActivityPartition.gif
new file mode 100644
index 0000000..341b09e
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AllocateActivityPartition.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocated.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocated.gif
new file mode 100644
index 0000000..c673a52
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Allocated.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AssociationBlock.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AssociationBlock.gif
new file mode 100644
index 0000000..7db9c69
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/AssociationBlock.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BindingConnector.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BindingConnector.gif
new file mode 100644
index 0000000..8b9fa8a
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BindingConnector.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Block.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Block.gif
new file mode 100644
index 0000000..bc5ab83
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Block.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BlockProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BlockProperty.gif
new file mode 100644
index 0000000..0e14c65
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BlockProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BoundReference.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BoundReference.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/BoundReference.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ChangeStructuralFeatureEvent.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ChangeStructuralFeatureEvent.gif
new file mode 100644
index 0000000..22d4ab4
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ChangeStructuralFeatureEvent.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ClassifierBehaviorProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ClassifierBehaviorProperty.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ClassifierBehaviorProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Conform.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Conform.gif
new file mode 100644
index 0000000..1c2c5c2
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Conform.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConjugatedInterfaceBlock.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConjugatedInterfaceBlock.gif
new file mode 100644
index 0000000..bc5ab83
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConjugatedInterfaceBlock.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConnectorProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConnectorProperty.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConnectorProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintBlock.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintBlock.gif
new file mode 100644
index 0000000..3e7750a
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintBlock.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintProperty.gif
new file mode 100644
index 0000000..7c948e8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ConstraintProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Continuous.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Continuous.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Continuous.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator.gif
new file mode 100644
index 0000000..482a4d5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Behavior.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Behavior.gif
new file mode 100644
index 0000000..482a4d5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Behavior.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Operation.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Operation.gif
new file mode 100644
index 0000000..482a4d5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ControlOperator_Operation.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Copy.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Copy.gif
new file mode 100644
index 0000000..47caa0b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Copy.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Deprecated.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Deprecated.gif
new file mode 100644
index 0000000..ef56c14
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Deprecated.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DeriveReqt.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DeriveReqt.gif
new file mode 100644
index 0000000..6217748
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DeriveReqt.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Dimension.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Dimension.gif
new file mode 100644
index 0000000..eb861a0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Dimension.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedFeature.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedFeature.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedFeature.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedRelationshipPropertyPath.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedRelationshipPropertyPath.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DirectedRelationshipPropertyPath.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Discrete.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Discrete.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Discrete.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DistributedProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DistributedProperty.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/DistributedProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementGroup.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementGroup.gif
new file mode 100644
index 0000000..aae7e3c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementGroup.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementPropertyPath.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementPropertyPath.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ElementPropertyPath.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/EndPathMultiplicity.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/EndPathMultiplicity.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/EndPathMultiplicity.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Expose.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Expose.gif
new file mode 100644
index 0000000..e8dea1b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Expose.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort.gif
new file mode 100644
index 0000000..78ed7ce
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_IN.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_IN.gif
new file mode 100644
index 0000000..6e45798
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_IN.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_INOUT.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_INOUT.gif
new file mode 100644
index 0000000..78ed7ce
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_INOUT.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_NA.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_NA.gif
new file mode 100644
index 0000000..3fd4b05
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_NA.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_OUT.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_OUT.gif
new file mode 100644
index 0000000..1b7c2cb
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowPort_OUT.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty.gif
new file mode 100644
index 0000000..77c0e22
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_IN.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_IN.gif
new file mode 100644
index 0000000..dcf0b98
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_IN.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_INOUT.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_INOUT.gif
new file mode 100644
index 0000000..9b24cf5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_INOUT.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_OUT.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_OUT.gif
new file mode 100644
index 0000000..1630535
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowProperty_OUT.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowSpecification.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowSpecification.gif
new file mode 100644
index 0000000..1df635f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FlowSpecification.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FullPort.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FullPort.gif
new file mode 100644
index 0000000..1fe1d48
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/FullPort.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InterfaceBlock.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InterfaceBlock.gif
new file mode 100644
index 0000000..bc5ab83
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InterfaceBlock.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InvocationOnNestedPortAction.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InvocationOnNestedPortAction.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/InvocationOnNestedPortAction.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ItemFlow.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ItemFlow.gif
new file mode 100644
index 0000000..31c9dc8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ItemFlow.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd.gif
new file mode 100644
index 0000000..a23b0b0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_ConnectorEnd.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_ConnectorEnd.gif
new file mode 100644
index 0000000..a23b0b0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_ConnectorEnd.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_Element.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_Element.gif
new file mode 100644
index 0000000..a23b0b0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NestedConnectorEnd_Element.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NoBuffer.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NoBuffer.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/NoBuffer.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Operation.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Operation.gif
new file mode 100644
index 0000000..482a4d5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Operation.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Optional.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Optional.gif
new file mode 100644
index 0000000..b156d84
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Optional.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Overwrite.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Overwrite.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Overwrite.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ParticipantProperty.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ParticipantProperty.gif
new file mode 100644
index 0000000..99b7fa6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ParticipantProperty.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Probability.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Probability.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Probability.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Problem.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Problem.gif
new file mode 100644
index 0000000..cd989e8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Problem.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/PropertySpecificType.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/PropertySpecificType.gif
new file mode 100644
index 0000000..c60f0d5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/PropertySpecificType.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ProxyPort.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ProxyPort.gif
new file mode 100644
index 0000000..2570ec8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ProxyPort.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rate.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rate.gif
new file mode 100644
index 0000000..ecc0b71
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rate.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rationale.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rationale.gif
new file mode 100644
index 0000000..a82851f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Rationale.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Refine.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Refine.gif
new file mode 100644
index 0000000..c8d1d8c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Refine.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Requirement.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Requirement.gif
new file mode 100644
index 0000000..50618e0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Requirement.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/RequirementRelated.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/RequirementRelated.gif
new file mode 100644
index 0000000..33854e9
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/RequirementRelated.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Satisfy.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Satisfy.gif
new file mode 100644
index 0000000..00848d8
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Satisfy.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Stakeholder.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Stakeholder.gif
new file mode 100644
index 0000000..afb2ea7
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Stakeholder.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase.gif
new file mode 100644
index 0000000..ac29611
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Behavior.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Behavior.gif
new file mode 100644
index 0000000..ac29611
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Behavior.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Operation.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Operation.gif
new file mode 100644
index 0000000..ac29611
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TestCase_Operation.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Trace.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Trace.gif
new file mode 100644
index 0000000..f4cb0d3
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Trace.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort.gif
new file mode 100644
index 0000000..0b53cf6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Element.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Element.gif
new file mode 100644
index 0000000..0b53cf6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Element.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Trigger.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Trigger.gif
new file mode 100644
index 0000000..0b53cf6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/TriggerOnNestedPort_Trigger.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Unit.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Unit.gif
new file mode 100644
index 0000000..33bfb26
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Unit.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ValueType.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ValueType.gif
new file mode 100644
index 0000000..eb54412
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/ValueType.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Verify.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Verify.gif
new file mode 100644
index 0000000..2d54efc
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Verify.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/View.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/View.gif
new file mode 100644
index 0000000..2d874ff
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/View.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Viewpoint.gif b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Viewpoint.gif
new file mode 100644
index 0000000..a1cd285
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/icons/full/obj16/Viewpoint.gif
Binary files differ
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.properties b/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.properties
new file mode 100644
index 0000000..cef67ec
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.properties
@@ -0,0 +1,255 @@
+# Copyright (c) 2019 CEA LIST.
+# 
+#  All rights reserved. This program and the accompanying materials
+#  are made available under the terms of the Eclipse Public License 2.0
+#  which accompanies this distribution, and is available at
+#  http://www.eclipse.org/legal/epl-v10.html
+# 
+# Contributors:
+#   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+# 
+
+Bundle-Name = Papyrus SysML 1.6 Profile Edit Support
+Bundle-Vendor = Eclipse Modeling Project
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_Continuous_type = Continuous
+_UI_Rate_type = Rate
+_UI_ControlOperator_type = Control Operator
+_UI_Discrete_type = Discrete
+_UI_NoBuffer_type = No Buffer
+_UI_Optional_type = Optional
+_UI_Overwrite_type = Overwrite
+_UI_Probability_type = Probability
+_UI_Allocate_type = Allocate
+_UI_AllocateActivityPartition_type = Allocate Activity Partition
+_UI_AdjunctProperty_type = Adjunct Property
+_UI_BindingConnector_type = Binding Connector
+_UI_Block_type = Block
+_UI_BoundReference_type = Bound Reference
+_UI_EndPathMultiplicity_type = End Path Multiplicity
+_UI_ClassifierBehaviorProperty_type = Classifier Behavior Property
+_UI_ConnectorProperty_type = Connector Property
+_UI_DistributedProperty_type = Distributed Property
+_UI_ElementPropertyPath_type = Element Property Path
+_UI_NestedConnectorEnd_type = Nested Connector End
+_UI_ParticipantProperty_type = Participant Property
+_UI_PropertySpecificType_type = Property Specific Type
+_UI_ValueType_type = Value Type
+_UI_DirectedRelationshipPropertyPath_type = Directed Relationship Property Path
+_UI_ConstraintBlock_type = Constraint Block
+_UI_FlowPort_type = Flow Port
+_UI_FlowSpecification_type = Flow Specification
+_UI_AcceptChangeStructuralFeatureEventAction_type = Accept Change Structural Feature Event Action
+_UI_ChangeStructuralFeatureEvent_type = Change Structural Feature Event
+_UI_DirectedFeature_type = Directed Feature
+_UI_FlowProperty_type = Flow Property
+_UI_FullPort_type = Full Port
+_UI_InterfaceBlock_type = Interface Block
+_UI_InvocationOnNestedPortAction_type = Invocation On Nested Port Action
+_UI_ItemFlow_type = Item Flow
+_UI_ProxyPort_type = Proxy Port
+_UI_TriggerOnNestedPort_type = Trigger On Nested Port
+_UI_ConjugatedInterfaceBlock_type = Conjugated Interface Block
+_UI_AddFlowPropertyValueOnNestedPortAction_type = Add Flow Property Value On Nested Port Action
+_UI_Conform_type = Conform
+_UI_ElementGroup_type = Element Group
+_UI_Expose_type = Expose
+_UI_Problem_type = Problem
+_UI_Rationale_type = Rationale
+_UI_Stakeholder_type = Stakeholder
+_UI_View_type = View
+_UI_Viewpoint_type = Viewpoint
+_UI_Copy_type = Copy
+_UI_Trace_type = Trace
+_UI_Requirement_type = Requirement
+_UI_AbstractRequirement_type = Abstract Requirement
+_UI_DeriveReqt_type = Derive Reqt
+_UI_Refine_type = Refine
+_UI_Satisfy_type = Satisfy
+_UI_TestCase_type = Test Case
+_UI_Verify_type = Verify
+_UI_Auxiliary_type = Auxiliary
+_UI_Call_type = Call
+_UI_Create_type = Create
+_UI_Derive_type = Derive
+_UI_Destroy_type = Destroy
+_UI_Document_type = Document
+_UI_File_type = File
+_UI_Entity_type = Entity
+_UI_Executable_type = Executable
+_UI_Focus_type = Focus
+_UI_Framework_type = Framework
+_UI_Implement_type = Implement
+_UI_ImplementationClass_type = Implementation Class
+_UI_Instantiate_type = Instantiate
+_UI_Library_type = Library
+_UI_Metaclass_type = Metaclass
+_UI_ModelLibrary_type = Model Library
+_UI_Process_type = Process
+_UI_Realization_type = Realization
+_UI_Refine_type = Refine
+_UI_Responsibility_type = Responsibility
+_UI_Script_type = Script
+_UI_Send_type = Send
+_UI_Service_type = Service
+_UI_Source_type = Source
+_UI_Specification_type = Specification
+_UI_Subsystem_type = Subsystem
+_UI_Trace_type = Trace
+_UI_Type_type = Type
+_UI_Utility_type = Utility
+_UI_BuildComponent_type = Build Component
+_UI_Metamodel_type = Metamodel
+_UI_SystemModel_type = System Model
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_Rate_base_ActivityEdge_feature = Base Activity Edge
+_UI_Rate_base_ObjectNode_feature = Base Object Node
+_UI_Rate_base_Parameter_feature = Base Parameter
+_UI_Rate_rate_feature = Rate
+_UI_ControlOperator_base_Behavior_feature = Base Behavior
+_UI_ControlOperator_base_Operation_feature = Base Operation
+_UI_NoBuffer_base_ObjectNode_feature = Base Object Node
+_UI_Optional_base_Parameter_feature = Base Parameter
+_UI_Overwrite_base_ObjectNode_feature = Base Object Node
+_UI_Probability_base_ActivityEdge_feature = Base Activity Edge
+_UI_Probability_base_ParameterSet_feature = Base Parameter Set
+_UI_Probability_probability_feature = Probability
+_UI_Allocate_base_Abstraction_feature = Base Abstraction
+_UI_AllocateActivityPartition_base_ActivityPartition_feature = Base Activity Partition
+_UI_AdjunctProperty_base_Property_feature = Base Property
+_UI_AdjunctProperty_principal_feature = Principal
+_UI_BindingConnector_base_Connector_feature = Base Connector
+_UI_Block_base_Class_feature = Base Class
+_UI_Block_isEncapsulated_feature = Is Encapsulated
+_UI_BoundReference_bindingPath_feature = Binding Path
+_UI_BoundReference_boundEnd_feature = Bound End
+_UI_EndPathMultiplicity_base_Property_feature = Base Property
+_UI_EndPathMultiplicity_lower_feature = Lower
+_UI_EndPathMultiplicity_upper_feature = Upper
+_UI_ClassifierBehaviorProperty_base_Property_feature = Base Property
+_UI_ConnectorProperty_base_Property_feature = Base Property
+_UI_ConnectorProperty_connector_feature = Connector
+_UI_DistributedProperty_base_Property_feature = Base Property
+_UI_ElementPropertyPath_base_Element_feature = Base Element
+_UI_ElementPropertyPath_propertyPath_feature = Property Path
+_UI_NestedConnectorEnd_base_ConnectorEnd_feature = Base Connector End
+_UI_ParticipantProperty_base_Property_feature = Base Property
+_UI_ParticipantProperty_end_feature = End
+_UI_PropertySpecificType_base_Classifier_feature = Base Classifier
+_UI_ValueType_base_DataType_feature = Base Data Type
+_UI_ValueType_quantityKind_feature = Quantity Kind
+_UI_ValueType_unit_feature = Unit
+_UI_DirectedRelationshipPropertyPath_base_DirectedRelationship_feature = Base Directed Relationship
+_UI_DirectedRelationshipPropertyPath_sourceContext_feature = Source Context
+_UI_DirectedRelationshipPropertyPath_sourcePropertyPath_feature = Source Property Path
+_UI_DirectedRelationshipPropertyPath_targetContext_feature = Target Context
+_UI_DirectedRelationshipPropertyPath_targetPropertyPath_feature = Target Property Path
+_UI_FlowPort_base_Port_feature = Base Port
+_UI_FlowPort_direction_feature = Direction
+_UI_FlowPort_isAtomic_feature = Is Atomic
+_UI_FlowSpecification_base_Interface_feature = Base Interface
+_UI_AcceptChangeStructuralFeatureEventAction_base_AcceptEventAction_feature = Base Accept Event Action
+_UI_ChangeStructuralFeatureEvent_base_ChangeEvent_feature = Base Change Event
+_UI_ChangeStructuralFeatureEvent_structuralFeature_feature = Structural Feature
+_UI_DirectedFeature_base_Feature_feature = Base Feature
+_UI_DirectedFeature_featureDirection_feature = Feature Direction
+_UI_FlowProperty_base_Property_feature = Base Property
+_UI_FlowProperty_direction_feature = Direction
+_UI_FullPort_base_Port_feature = Base Port
+_UI_InvocationOnNestedPortAction_base_InvocationAction_feature = Base Invocation Action
+_UI_InvocationOnNestedPortAction_onNestedPort_feature = On Nested Port
+_UI_ItemFlow_base_InformationFlow_feature = Base Information Flow
+_UI_ItemFlow_itemProperty_feature = Item Property
+_UI_ProxyPort_base_Port_feature = Base Port
+_UI_TriggerOnNestedPort_base_Trigger_feature = Base Trigger
+_UI_TriggerOnNestedPort_onNestedPort_feature = On Nested Port
+_UI_ConjugatedInterfaceBlock_original_feature = Original
+_UI_AddFlowPropertyValueOnNestedPortAction_onNestedPort_feature = On Nested Port
+_UI_AddFlowPropertyValueOnNestedPortAction_base_AddStructuralFeatureValueAction_feature = Base Add Structural Feature Value Action
+_UI_Conform_base_Generalization_feature = Base Generalization
+_UI_ElementGroup_base_Comment_feature = Base Comment
+_UI_ElementGroup_criterion_feature = Criterion
+_UI_ElementGroup_member_feature = Member
+_UI_ElementGroup_name_feature = Name
+_UI_ElementGroup_orderedMember_feature = Ordered Member
+_UI_ElementGroup_size_feature = Size
+_UI_Expose_base_Dependency_feature = Base Dependency
+_UI_Problem_base_Comment_feature = Base Comment
+_UI_Rationale_base_Comment_feature = Base Comment
+_UI_Stakeholder_base_Classifier_feature = Base Classifier
+_UI_Stakeholder_concernList_feature = Concern List
+_UI_Stakeholder_concern_feature = Concern
+_UI_View_base_Class_feature = Base Class
+_UI_View_stakeholder_feature = Stakeholder
+_UI_View_viewPoint_feature = View Point
+_UI_Viewpoint_base_Class_feature = Base Class
+_UI_Viewpoint_concern_feature = Concern
+_UI_Viewpoint_concernList_feature = Concern List
+_UI_Viewpoint_language_feature = Language
+_UI_Viewpoint_method_feature = Method
+_UI_Viewpoint_presentation_feature = Presentation
+_UI_Viewpoint_purpose_feature = Purpose
+_UI_Viewpoint_stakeholder_feature = Stakeholder
+_UI_Requirement_base_Class_feature = Base Class
+_UI_AbstractRequirement_base_NamedElement_feature = Base Named Element
+_UI_AbstractRequirement_derived_feature = Derived
+_UI_AbstractRequirement_derivedFrom_feature = Derived From
+_UI_AbstractRequirement_id_feature = Id
+_UI_AbstractRequirement_master_feature = Master
+_UI_AbstractRequirement_refinedBy_feature = Refined By
+_UI_AbstractRequirement_satisfiedBy_feature = Satisfied By
+_UI_AbstractRequirement_text_feature = Text
+_UI_AbstractRequirement_tracedTo_feature = Traced To
+_UI_AbstractRequirement_verifiedBy_feature = Verified By
+_UI_TestCase_base_Behavior_feature = Base Behavior
+_UI_TestCase_base_Operation_feature = Base Operation
+_UI_Auxiliary_base_Class_feature = Base Class
+_UI_Call_base_Usage_feature = Base Usage
+_UI_Create_base_BehavioralFeature_feature = Base Behavioral Feature
+_UI_Create_base_Usage_feature = Base Usage
+_UI_Derive_computation_feature = Computation
+_UI_Derive_base_Abstraction_feature = Base Abstraction
+_UI_Destroy_base_BehavioralFeature_feature = Base Behavioral Feature
+_UI_File_base_Artifact_feature = Base Artifact
+_UI_Entity_base_Component_feature = Base Component
+_UI_Focus_base_Class_feature = Base Class
+_UI_Framework_base_Package_feature = Base Package
+_UI_Implement_base_Component_feature = Base Component
+_UI_ImplementationClass_base_Class_feature = Base Class
+_UI_Instantiate_base_Usage_feature = Base Usage
+_UI_Metaclass_base_Class_feature = Base Class
+_UI_ModelLibrary_base_Package_feature = Base Package
+_UI_Process_base_Component_feature = Base Component
+_UI_Realization_base_Classifier_feature = Base Classifier
+_UI_Refine_base_Abstraction_feature = Base Abstraction
+_UI_Responsibility_base_Usage_feature = Base Usage
+_UI_Send_base_Usage_feature = Base Usage
+_UI_Service_base_Component_feature = Base Component
+_UI_Specification_base_Classifier_feature = Base Classifier
+_UI_Subsystem_base_Component_feature = Base Component
+_UI_Trace_base_Abstraction_feature = Base Abstraction
+_UI_Type_base_Class_feature = Base Class
+_UI_Utility_base_Class_feature = Base Class
+_UI_BuildComponent_base_Component_feature = Base Component
+_UI_Metamodel_base_Model_feature = Base Model
+_UI_SystemModel_base_Model_feature = Base Model
+_UI_Unknown_feature = Unspecified
+
+_UI_FeatureDirectionKind_provided_literal = provided
+_UI_FeatureDirectionKind_providedRequired_literal = providedRequired
+_UI_FeatureDirectionKind_required_literal = required
+_UI_FlowDirectionKind_in_literal = in
+_UI_FlowDirectionKind_inout_literal = inout
+_UI_FlowDirectionKind_out_literal = out
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.xml b/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.xml
new file mode 100644
index 0000000..3940d7f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/plugin.xml
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2019 CEA LIST.
+ 
+  All rights reserved. This program and the accompanying materials
+  are made available under the terms of the Eclipse Public License 2.0
+  which accompanies this distribution, and is available at
+  https://www.eclipse.org/legal/epl-2.0/ 
+
+  SPDX-License-Identifier: EPL-2.0
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Activities"
+            class="org.eclipse.papyrus.sysml16.activities.provider.ActivitiesItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Allocations"
+            class="org.eclipse.papyrus.sysml16.allocations.provider.AllocationsItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Blocks"
+            class="org.eclipse.papyrus.sysml16.blocks.provider.BlocksItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/ConstraintBlocks"
+            class="org.eclipse.papyrus.sysml16.constraintblocks.provider.ConstraintBlocksItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/DeprecatedElements"
+            class="org.eclipse.papyrus.sysml16.deprecatedelements.provider.DeprecatedElementsItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/PortsAndFlows"
+            class="org.eclipse.papyrus.sysml16.portsandflows.provider.PortsAndFlowsItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/ModelElements"
+            class="org.eclipse.papyrus.sysml16.modelelements.provider.ModelElementsItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated SysML.profile -->
+      <factory
+            uri="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements"
+            class="org.eclipse.papyrus.sysml16.requirements.provider.RequirementsItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
+</plugin>
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/pom.xml b/plugins/core/org.eclipse.papyrus.sysml16.edit/pom.xml
new file mode 100644
index 0000000..f11c1af
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<artifactId>org.eclipse.papyrus.sysml16.core</artifactId>
+		<groupId>org.eclipse.papyrus.sysml</groupId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>
+	<artifactId>org.eclipse.papyrus.sysml16.edit</artifactId>
+	<packaging>eclipse-plugin</packaging>
+	<name>org.eclipse.papyrus.sysml16.edit</name>
+	<description>This plug-in has been generated from this file : /org.eclipse.papyrus-sysml/core/org.eclipse.papyrus.sysml16/resources/profile/SysML.genmodel</description>
+</project>
\ No newline at end of file
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ActivitiesItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ActivitiesItemProviderAdapterFactory.java
new file mode 100644
index 0000000..898cee4
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ActivitiesItemProviderAdapterFactory.java
@@ -0,0 +1,384 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.activities.util.ActivitiesAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ActivitiesItemProviderAdapterFactory extends ActivitiesAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ActivitiesItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Continuous} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ContinuousItemProvider continuousItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Continuous}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createContinuousAdapter() {
+		if (continuousItemProvider == null) {
+			continuousItemProvider = new ContinuousItemProvider(this);
+		}
+
+		return continuousItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Rate} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RateItemProvider rateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Rate}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createRateAdapter() {
+		if (rateItemProvider == null) {
+			rateItemProvider = new RateItemProvider(this);
+		}
+
+		return rateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.ControlOperator} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ControlOperatorItemProvider controlOperatorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.ControlOperator}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createControlOperatorAdapter() {
+		if (controlOperatorItemProvider == null) {
+			controlOperatorItemProvider = new ControlOperatorItemProvider(this);
+		}
+
+		return controlOperatorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Discrete} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DiscreteItemProvider discreteItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Discrete}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createDiscreteAdapter() {
+		if (discreteItemProvider == null) {
+			discreteItemProvider = new DiscreteItemProvider(this);
+		}
+
+		return discreteItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.NoBuffer} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected NoBufferItemProvider noBufferItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.NoBuffer}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createNoBufferAdapter() {
+		if (noBufferItemProvider == null) {
+			noBufferItemProvider = new NoBufferItemProvider(this);
+		}
+
+		return noBufferItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Optional} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OptionalItemProvider optionalItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Optional}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createOptionalAdapter() {
+		if (optionalItemProvider == null) {
+			optionalItemProvider = new OptionalItemProvider(this);
+		}
+
+		return optionalItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Overwrite} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OverwriteItemProvider overwriteItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Overwrite}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createOverwriteAdapter() {
+		if (overwriteItemProvider == null) {
+			overwriteItemProvider = new OverwriteItemProvider(this);
+		}
+
+		return overwriteItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.activities.Probability} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ProbabilityItemProvider probabilityItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.activities.Probability}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createProbabilityAdapter() {
+		if (probabilityItemProvider == null) {
+			probabilityItemProvider = new ProbabilityItemProvider(this);
+		}
+
+		return probabilityItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (continuousItemProvider != null) continuousItemProvider.dispose();
+		if (rateItemProvider != null) rateItemProvider.dispose();
+		if (controlOperatorItemProvider != null) controlOperatorItemProvider.dispose();
+		if (discreteItemProvider != null) discreteItemProvider.dispose();
+		if (noBufferItemProvider != null) noBufferItemProvider.dispose();
+		if (optionalItemProvider != null) optionalItemProvider.dispose();
+		if (overwriteItemProvider != null) overwriteItemProvider.dispose();
+		if (probabilityItemProvider != null) probabilityItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ContinuousItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ContinuousItemProvider.java
new file mode 100644
index 0000000..55ff721
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ContinuousItemProvider.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Continuous} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ContinuousItemProvider extends RateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ContinuousItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns Continuous.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Continuous")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Continuous_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ControlOperatorItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ControlOperatorItemProvider.java
new file mode 100644
index 0000000..94a3e58
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ControlOperatorItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.ControlOperator} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ControlOperatorItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ControlOperatorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_BehaviorPropertyDescriptor(object);
+			addBase_OperationPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Behavior feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_BehaviorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ControlOperator_base_Behavior_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ControlOperator_base_Behavior_feature", "_UI_ControlOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.CONTROL_OPERATOR__BASE_BEHAVIOR,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Operation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_OperationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ControlOperator_base_Operation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ControlOperator_base_Operation_feature", "_UI_ControlOperator_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.CONTROL_OPERATOR__BASE_OPERATION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ControlOperator.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ControlOperator")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ControlOperator_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/DiscreteItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/DiscreteItemProvider.java
new file mode 100644
index 0000000..c156596
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/DiscreteItemProvider.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Discrete} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DiscreteItemProvider extends RateItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DiscreteItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns Discrete.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Discrete")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Discrete_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/NoBufferItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/NoBufferItemProvider.java
new file mode 100644
index 0000000..5220046
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/NoBufferItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.NoBuffer} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class NoBufferItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NoBufferItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ObjectNodePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Object Node feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ObjectNodePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NoBuffer_base_ObjectNode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NoBuffer_base_ObjectNode_feature", "_UI_NoBuffer_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.NO_BUFFER__BASE_OBJECT_NODE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns NoBuffer.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/NoBuffer")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_NoBuffer_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OptionalItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OptionalItemProvider.java
new file mode 100644
index 0000000..bbc99a6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OptionalItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Optional} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OptionalItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OptionalItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ParameterPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Parameter feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ParameterPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Optional_base_Parameter_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Optional_base_Parameter_feature", "_UI_Optional_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.OPTIONAL__BASE_PARAMETER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Optional.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Optional")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Optional_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OverwriteItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OverwriteItemProvider.java
new file mode 100644
index 0000000..e78045b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/OverwriteItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Overwrite} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OverwriteItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OverwriteItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ObjectNodePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Object Node feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ObjectNodePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Overwrite_base_ObjectNode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Overwrite_base_ObjectNode_feature", "_UI_Overwrite_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.OVERWRITE__BASE_OBJECT_NODE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Overwrite.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Overwrite")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Overwrite_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ProbabilityItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ProbabilityItemProvider.java
new file mode 100644
index 0000000..8857953
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/ProbabilityItemProvider.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Probability} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ProbabilityItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ProbabilityItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ActivityEdgePropertyDescriptor(object);
+			addBase_ParameterSetPropertyDescriptor(object);
+			addProbabilityPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Activity Edge feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ActivityEdgePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Probability_base_ActivityEdge_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Probability_base_ActivityEdge_feature", "_UI_Probability_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.PROBABILITY__BASE_ACTIVITY_EDGE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Parameter Set feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ParameterSetPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Probability_base_ParameterSet_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Probability_base_ParameterSet_feature", "_UI_Probability_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.PROBABILITY__BASE_PARAMETER_SET,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Probability feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addProbabilityPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Probability_probability_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Probability_probability_feature", "_UI_Probability_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.PROBABILITY__PROBABILITY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Probability.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Probability")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Probability_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/RateItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/RateItemProvider.java
new file mode 100644
index 0000000..dd7629c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/activities/provider/RateItemProvider.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.activities.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.activities.ActivitiesPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.activities.Rate} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RateItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ActivityEdgePropertyDescriptor(object);
+			addBase_ObjectNodePropertyDescriptor(object);
+			addBase_ParameterPropertyDescriptor(object);
+			addRatePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Activity Edge feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ActivityEdgePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Rate_base_ActivityEdge_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Rate_base_ActivityEdge_feature", "_UI_Rate_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.RATE__BASE_ACTIVITY_EDGE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Object Node feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ObjectNodePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Rate_base_ObjectNode_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Rate_base_ObjectNode_feature", "_UI_Rate_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.RATE__BASE_OBJECT_NODE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Parameter feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ParameterPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Rate_base_Parameter_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Rate_base_Parameter_feature", "_UI_Rate_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.RATE__BASE_PARAMETER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Rate feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRatePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Rate_rate_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Rate_rate_feature", "_UI_Rate_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ActivitiesPackage.Literals.RATE__RATE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Rate.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Rate")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Rate_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateActivityPartitionItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateActivityPartitionItemProvider.java
new file mode 100644
index 0000000..12376ff
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateActivityPartitionItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.allocations.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.allocations.AllocateActivityPartition} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AllocateActivityPartitionItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AllocateActivityPartitionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ActivityPartitionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Activity Partition feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ActivityPartitionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AllocateActivityPartition_base_ActivityPartition_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AllocateActivityPartition_base_ActivityPartition_feature", "_UI_AllocateActivityPartition_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 AllocationsPackage.Literals.ALLOCATE_ACTIVITY_PARTITION__BASE_ACTIVITY_PARTITION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns AllocateActivityPartition.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/AllocateActivityPartition")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_AllocateActivityPartition_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateItemProvider.java
new file mode 100644
index 0000000..b66ac9b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocateItemProvider.java
@@ -0,0 +1,148 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.allocations.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.allocations.AllocationsPackage;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.DirectedRelationshipPropertyPathItemProvider;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.allocations.Allocate} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AllocateItemProvider extends DirectedRelationshipPropertyPathItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AllocateItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_AbstractionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Abstraction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_AbstractionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Allocate_base_Abstraction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Allocate_base_Abstraction_feature", "_UI_Allocate_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 AllocationsPackage.Literals.ALLOCATE__BASE_ABSTRACTION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Allocate.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Allocate")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Allocate_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocationsItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocationsItemProviderAdapterFactory.java
new file mode 100644
index 0000000..4441f88
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/allocations/provider/AllocationsItemProviderAdapterFactory.java
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.allocations.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.allocations.util.AllocationsAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AllocationsItemProviderAdapterFactory extends AllocationsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AllocationsItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.allocations.Allocate} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AllocateItemProvider allocateItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.allocations.Allocate}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createAllocateAdapter() {
+		if (allocateItemProvider == null) {
+			allocateItemProvider = new AllocateItemProvider(this);
+		}
+
+		return allocateItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.allocations.AllocateActivityPartition} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AllocateActivityPartitionItemProvider allocateActivityPartitionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.allocations.AllocateActivityPartition}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createAllocateActivityPartitionAdapter() {
+		if (allocateActivityPartitionItemProvider == null) {
+			allocateActivityPartitionItemProvider = new AllocateActivityPartitionItemProvider(this);
+		}
+
+		return allocateActivityPartitionItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (allocateItemProvider != null) allocateItemProvider.dispose();
+		if (allocateActivityPartitionItemProvider != null) allocateActivityPartitionItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/AdjunctPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/AdjunctPropertyItemProvider.java
new file mode 100644
index 0000000..401e6a6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/AdjunctPropertyItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.AdjunctProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AdjunctPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdjunctPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+			addPrincipalPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AdjunctProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AdjunctProperty_base_Property_feature", "_UI_AdjunctProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.ADJUNCT_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Principal feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPrincipalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AdjunctProperty_principal_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AdjunctProperty_principal_feature", "_UI_AdjunctProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.ADJUNCT_PROPERTY__PRINCIPAL,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns AdjunctProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/AdjunctProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_AdjunctProperty_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BindingConnectorItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BindingConnectorItemProvider.java
new file mode 100644
index 0000000..174ca74
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BindingConnectorItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.BindingConnector} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BindingConnectorItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BindingConnectorItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ConnectorPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Connector feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ConnectorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_BindingConnector_base_Connector_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_BindingConnector_base_Connector_feature", "_UI_BindingConnector_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.BINDING_CONNECTOR__BASE_CONNECTOR,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns BindingConnector.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/BindingConnector")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_BindingConnector_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlockItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlockItemProvider.java
new file mode 100644
index 0000000..744f1ad
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlockItemProvider.java
@@ -0,0 +1,192 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.blocks.Block;
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.Block} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BlockItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlockItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ClassPropertyDescriptor(object);
+			addIsEncapsulatedPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Block_base_Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Block_base_Class_feature", "_UI_Block_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.BLOCK__BASE_CLASS,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Encapsulated feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsEncapsulatedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Block_isEncapsulated_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Block_isEncapsulated_feature", "_UI_Block_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.BLOCK__IS_ENCAPSULATED,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Block.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Block")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		Block block = (Block)object;
+		return getString("_UI_Block_type") + " " + block.isEncapsulated(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Block.class)) {
+			case BlocksPackage.BLOCK__IS_ENCAPSULATED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlocksItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlocksItemProviderAdapterFactory.java
new file mode 100644
index 0000000..9635e8e
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BlocksItemProviderAdapterFactory.java
@@ -0,0 +1,480 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.blocks.util.BlocksAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BlocksItemProviderAdapterFactory extends BlocksAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlocksItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.AdjunctProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AdjunctPropertyItemProvider adjunctPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.AdjunctProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdjunctPropertyAdapter() {
+		if (adjunctPropertyItemProvider == null) {
+			adjunctPropertyItemProvider = new AdjunctPropertyItemProvider(this);
+		}
+
+		return adjunctPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.BindingConnector} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BindingConnectorItemProvider bindingConnectorItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.BindingConnector}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createBindingConnectorAdapter() {
+		if (bindingConnectorItemProvider == null) {
+			bindingConnectorItemProvider = new BindingConnectorItemProvider(this);
+		}
+
+		return bindingConnectorItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.Block} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BlockItemProvider blockItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.Block}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createBlockAdapter() {
+		if (blockItemProvider == null) {
+			blockItemProvider = new BlockItemProvider(this);
+		}
+
+		return blockItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.BoundReference} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BoundReferenceItemProvider boundReferenceItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.BoundReference}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createBoundReferenceAdapter() {
+		if (boundReferenceItemProvider == null) {
+			boundReferenceItemProvider = new BoundReferenceItemProvider(this);
+		}
+
+		return boundReferenceItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.EndPathMultiplicity} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EndPathMultiplicityItemProvider endPathMultiplicityItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.EndPathMultiplicity}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createEndPathMultiplicityAdapter() {
+		if (endPathMultiplicityItemProvider == null) {
+			endPathMultiplicityItemProvider = new EndPathMultiplicityItemProvider(this);
+		}
+
+		return endPathMultiplicityItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.ClassifierBehaviorProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ClassifierBehaviorPropertyItemProvider classifierBehaviorPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ClassifierBehaviorProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createClassifierBehaviorPropertyAdapter() {
+		if (classifierBehaviorPropertyItemProvider == null) {
+			classifierBehaviorPropertyItemProvider = new ClassifierBehaviorPropertyItemProvider(this);
+		}
+
+		return classifierBehaviorPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.ConnectorProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConnectorPropertyItemProvider connectorPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ConnectorProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createConnectorPropertyAdapter() {
+		if (connectorPropertyItemProvider == null) {
+			connectorPropertyItemProvider = new ConnectorPropertyItemProvider(this);
+		}
+
+		return connectorPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.DistributedProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DistributedPropertyItemProvider distributedPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.DistributedProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createDistributedPropertyAdapter() {
+		if (distributedPropertyItemProvider == null) {
+			distributedPropertyItemProvider = new DistributedPropertyItemProvider(this);
+		}
+
+		return distributedPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.NestedConnectorEnd} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected NestedConnectorEndItemProvider nestedConnectorEndItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.NestedConnectorEnd}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createNestedConnectorEndAdapter() {
+		if (nestedConnectorEndItemProvider == null) {
+			nestedConnectorEndItemProvider = new NestedConnectorEndItemProvider(this);
+		}
+
+		return nestedConnectorEndItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.ParticipantProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ParticipantPropertyItemProvider participantPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ParticipantProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createParticipantPropertyAdapter() {
+		if (participantPropertyItemProvider == null) {
+			participantPropertyItemProvider = new ParticipantPropertyItemProvider(this);
+		}
+
+		return participantPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.PropertySpecificType} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PropertySpecificTypeItemProvider propertySpecificTypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.PropertySpecificType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createPropertySpecificTypeAdapter() {
+		if (propertySpecificTypeItemProvider == null) {
+			propertySpecificTypeItemProvider = new PropertySpecificTypeItemProvider(this);
+		}
+
+		return propertySpecificTypeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.blocks.ValueType} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ValueTypeItemProvider valueTypeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ValueType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createValueTypeAdapter() {
+		if (valueTypeItemProvider == null) {
+			valueTypeItemProvider = new ValueTypeItemProvider(this);
+		}
+
+		return valueTypeItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (adjunctPropertyItemProvider != null) adjunctPropertyItemProvider.dispose();
+		if (bindingConnectorItemProvider != null) bindingConnectorItemProvider.dispose();
+		if (blockItemProvider != null) blockItemProvider.dispose();
+		if (boundReferenceItemProvider != null) boundReferenceItemProvider.dispose();
+		if (endPathMultiplicityItemProvider != null) endPathMultiplicityItemProvider.dispose();
+		if (classifierBehaviorPropertyItemProvider != null) classifierBehaviorPropertyItemProvider.dispose();
+		if (connectorPropertyItemProvider != null) connectorPropertyItemProvider.dispose();
+		if (distributedPropertyItemProvider != null) distributedPropertyItemProvider.dispose();
+		if (nestedConnectorEndItemProvider != null) nestedConnectorEndItemProvider.dispose();
+		if (participantPropertyItemProvider != null) participantPropertyItemProvider.dispose();
+		if (propertySpecificTypeItemProvider != null) propertySpecificTypeItemProvider.dispose();
+		if (valueTypeItemProvider != null) valueTypeItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BoundReferenceItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BoundReferenceItemProvider.java
new file mode 100644
index 0000000..1f98ee5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/BoundReferenceItemProvider.java
@@ -0,0 +1,156 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml16.blocks.BoundReference;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.BoundReference} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class BoundReferenceItemProvider extends EndPathMultiplicityItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BoundReferenceItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBindingPathPropertyDescriptor(object);
+			addBoundEndPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Binding Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBindingPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_BoundReference_bindingPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_BoundReference_bindingPath_feature", "_UI_BoundReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.BOUND_REFERENCE__BINDING_PATH,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Bound End feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBoundEndPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_BoundReference_boundEnd_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_BoundReference_boundEnd_feature", "_UI_BoundReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.BOUND_REFERENCE__BOUND_END,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns BoundReference.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/BoundReference")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		BoundReference boundReference = (BoundReference)object;
+		return getString("_UI_BoundReference_type") + " " + boundReference.getLower(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ClassifierBehaviorPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ClassifierBehaviorPropertyItemProvider.java
new file mode 100644
index 0000000..6fe39ec
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ClassifierBehaviorPropertyItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ClassifierBehaviorProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ClassifierBehaviorPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ClassifierBehaviorPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ClassifierBehaviorProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ClassifierBehaviorProperty_base_Property_feature", "_UI_ClassifierBehaviorProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.CLASSIFIER_BEHAVIOR_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ClassifierBehaviorProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ClassifierBehaviorProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ClassifierBehaviorProperty_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ConnectorPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ConnectorPropertyItemProvider.java
new file mode 100644
index 0000000..e69e7f0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ConnectorPropertyItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ConnectorProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConnectorPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConnectorPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+			addConnectorPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConnectorProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConnectorProperty_base_Property_feature", "_UI_ConnectorProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.CONNECTOR_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Connector feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConnectorPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConnectorProperty_connector_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConnectorProperty_connector_feature", "_UI_ConnectorProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.CONNECTOR_PROPERTY__CONNECTOR,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ConnectorProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ConnectorProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ConnectorProperty_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DirectedRelationshipPropertyPathItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DirectedRelationshipPropertyPathItemProvider.java
new file mode 100644
index 0000000..1d57ec7
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DirectedRelationshipPropertyPathItemProvider.java
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.DirectedRelationshipPropertyPath} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DirectedRelationshipPropertyPathItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DirectedRelationshipPropertyPathItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_DirectedRelationshipPropertyDescriptor(object);
+			addSourceContextPropertyDescriptor(object);
+			addSourcePropertyPathPropertyDescriptor(object);
+			addTargetContextPropertyDescriptor(object);
+			addTargetPropertyPathPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Directed Relationship feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_DirectedRelationshipPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedRelationshipPropertyPath_base_DirectedRelationship_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedRelationshipPropertyPath_base_DirectedRelationship_feature", "_UI_DirectedRelationshipPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH__BASE_DIRECTED_RELATIONSHIP,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Source Context feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSourceContextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedRelationshipPropertyPath_sourceContext_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedRelationshipPropertyPath_sourceContext_feature", "_UI_DirectedRelationshipPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_CONTEXT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Source Property Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSourcePropertyPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedRelationshipPropertyPath_sourcePropertyPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedRelationshipPropertyPath_sourcePropertyPath_feature", "_UI_DirectedRelationshipPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH__SOURCE_PROPERTY_PATH,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Target Context feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetContextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedRelationshipPropertyPath_targetContext_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedRelationshipPropertyPath_targetContext_feature", "_UI_DirectedRelationshipPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_CONTEXT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Target Property Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTargetPropertyPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedRelationshipPropertyPath_targetPropertyPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedRelationshipPropertyPath_targetPropertyPath_feature", "_UI_DirectedRelationshipPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DIRECTED_RELATIONSHIP_PROPERTY_PATH__TARGET_PROPERTY_PATH,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DirectedRelationshipPropertyPath_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DistributedPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DistributedPropertyItemProvider.java
new file mode 100644
index 0000000..4050b62
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/DistributedPropertyItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.DistributedProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DistributedPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DistributedPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DistributedProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DistributedProperty_base_Property_feature", "_UI_DistributedProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.DISTRIBUTED_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns DistributedProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/DistributedProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DistributedProperty_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ElementPropertyPathItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ElementPropertyPathItemProvider.java
new file mode 100644
index 0000000..b12cb0c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ElementPropertyPathItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ElementPropertyPath} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementPropertyPathItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ElementPropertyPathItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ElementPropertyDescriptor(object);
+			addPropertyPathPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Element feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ElementPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementPropertyPath_base_Element_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementPropertyPath_base_Element_feature", "_UI_ElementPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.ELEMENT_PROPERTY_PATH__BASE_ELEMENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Property Path feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPropertyPathPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementPropertyPath_propertyPath_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementPropertyPath_propertyPath_feature", "_UI_ElementPropertyPath_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.ELEMENT_PROPERTY_PATH__PROPERTY_PATH,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ElementPropertyPath_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/EndPathMultiplicityItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/EndPathMultiplicityItemProvider.java
new file mode 100644
index 0000000..bf2c82c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/EndPathMultiplicityItemProvider.java
@@ -0,0 +1,216 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+import org.eclipse.papyrus.sysml16.blocks.EndPathMultiplicity;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.EndPathMultiplicity} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EndPathMultiplicityItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EndPathMultiplicityItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+			addLowerPropertyDescriptor(object);
+			addUpperPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_EndPathMultiplicity_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_EndPathMultiplicity_base_Property_feature", "_UI_EndPathMultiplicity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.END_PATH_MULTIPLICITY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Lower feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLowerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_EndPathMultiplicity_lower_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_EndPathMultiplicity_lower_feature", "_UI_EndPathMultiplicity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.END_PATH_MULTIPLICITY__LOWER,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Upper feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUpperPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_EndPathMultiplicity_upper_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_EndPathMultiplicity_upper_feature", "_UI_EndPathMultiplicity_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.END_PATH_MULTIPLICITY__UPPER,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns EndPathMultiplicity.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/EndPathMultiplicity")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		EndPathMultiplicity endPathMultiplicity = (EndPathMultiplicity)object;
+		return getString("_UI_EndPathMultiplicity_type") + " " + endPathMultiplicity.getLower(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(EndPathMultiplicity.class)) {
+			case BlocksPackage.END_PATH_MULTIPLICITY__LOWER:
+			case BlocksPackage.END_PATH_MULTIPLICITY__UPPER:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/NestedConnectorEndItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/NestedConnectorEndItemProvider.java
new file mode 100644
index 0000000..bb0b85f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/NestedConnectorEndItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.NestedConnectorEnd} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class NestedConnectorEndItemProvider extends ElementPropertyPathItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NestedConnectorEndItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ConnectorEndPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Connector End feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ConnectorEndPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_NestedConnectorEnd_base_ConnectorEnd_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_NestedConnectorEnd_base_ConnectorEnd_feature", "_UI_NestedConnectorEnd_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.NESTED_CONNECTOR_END__BASE_CONNECTOR_END,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns NestedConnectorEnd.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/NestedConnectorEnd")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_NestedConnectorEnd_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ParticipantPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ParticipantPropertyItemProvider.java
new file mode 100644
index 0000000..8e8d9f0
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ParticipantPropertyItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ParticipantProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ParticipantPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ParticipantPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+			addEndPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ParticipantProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ParticipantProperty_base_Property_feature", "_UI_ParticipantProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.PARTICIPANT_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the End feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addEndPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ParticipantProperty_end_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ParticipantProperty_end_feature", "_UI_ParticipantProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.PARTICIPANT_PROPERTY__END,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ParticipantProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ParticipantProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ParticipantProperty_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/PropertySpecificTypeItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/PropertySpecificTypeItemProvider.java
new file mode 100644
index 0000000..43384a2
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/PropertySpecificTypeItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.PropertySpecificType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PropertySpecificTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertySpecificTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ClassifierPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Classifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ClassifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_PropertySpecificType_base_Classifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_PropertySpecificType_base_Classifier_feature", "_UI_PropertySpecificType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.PROPERTY_SPECIFIC_TYPE__BASE_CLASSIFIER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns PropertySpecificType.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/PropertySpecificType")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_PropertySpecificType_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ValueTypeItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ValueTypeItemProvider.java
new file mode 100644
index 0000000..2086eab
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/blocks/provider/ValueTypeItemProvider.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.blocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.blocks.BlocksPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.blocks.ValueType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ValueTypeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueTypeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_DataTypePropertyDescriptor(object);
+			addQuantityKindPropertyDescriptor(object);
+			addUnitPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Data Type feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_DataTypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_base_DataType_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_base_DataType_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.VALUE_TYPE__BASE_DATA_TYPE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Quantity Kind feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addQuantityKindPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_quantityKind_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_quantityKind_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.VALUE_TYPE__QUANTITY_KIND,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Unit feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addUnitPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ValueType_unit_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ValueType_unit_feature", "_UI_ValueType_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 BlocksPackage.Literals.VALUE_TYPE__UNIT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ValueType.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ValueType")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ValueType_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlockItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlockItemProvider.java
new file mode 100644
index 0000000..7f4fb53
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlockItemProvider.java
@@ -0,0 +1,125 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.constraintblocks.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.BlockItemProvider;
+
+import org.eclipse.papyrus.sysml16.constraintblocks.ConstraintBlock;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.constraintblocks.ConstraintBlock} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConstraintBlockItemProvider extends BlockItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConstraintBlockItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns ConstraintBlock.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ConstraintBlock")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		ConstraintBlock constraintBlock = (ConstraintBlock)object;
+		return getString("_UI_ConstraintBlock_type") + " " + constraintBlock.isEncapsulated(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlocksItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlocksItemProviderAdapterFactory.java
new file mode 100644
index 0000000..5941199
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/constraintblocks/provider/ConstraintBlocksItemProviderAdapterFactory.java
@@ -0,0 +1,216 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.constraintblocks.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.constraintblocks.util.ConstraintBlocksAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConstraintBlocksItemProviderAdapterFactory extends ConstraintBlocksAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConstraintBlocksItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.constraintblocks.ConstraintBlock} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConstraintBlockItemProvider constraintBlockItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.constraintblocks.ConstraintBlock}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createConstraintBlockAdapter() {
+		if (constraintBlockItemProvider == null) {
+			constraintBlockItemProvider = new ConstraintBlockItemProvider(this);
+		}
+
+		return constraintBlockItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (constraintBlockItemProvider != null) constraintBlockItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/DeprecatedElementsItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/DeprecatedElementsItemProviderAdapterFactory.java
new file mode 100644
index 0000000..e6d72b6
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/DeprecatedElementsItemProviderAdapterFactory.java
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.deprecatedelements.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.deprecatedelements.util.DeprecatedElementsAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DeprecatedElementsItemProviderAdapterFactory extends DeprecatedElementsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DeprecatedElementsItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FlowPortItemProvider flowPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createFlowPortAdapter() {
+		if (flowPortItemProvider == null) {
+			flowPortItemProvider = new FlowPortItemProvider(this);
+		}
+
+		return flowPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowSpecification} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FlowSpecificationItemProvider flowSpecificationItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowSpecification}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createFlowSpecificationAdapter() {
+		if (flowSpecificationItemProvider == null) {
+			flowSpecificationItemProvider = new FlowSpecificationItemProvider(this);
+		}
+
+		return flowSpecificationItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (flowPortItemProvider != null) flowPortItemProvider.dispose();
+		if (flowSpecificationItemProvider != null) flowSpecificationItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowPortItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowPortItemProvider.java
new file mode 100644
index 0000000..15b3123
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowPortItemProvider.java
@@ -0,0 +1,221 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.deprecatedelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.deprecatedelements.DeprecatedElementsPackage;
+import org.eclipse.papyrus.sysml16.deprecatedelements.FlowPort;
+
+import org.eclipse.papyrus.sysml16.portsandflows.FlowDirectionKind;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FlowPortItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FlowPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PortPropertyDescriptor(object);
+			addDirectionPropertyDescriptor(object);
+			addIsAtomicPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowPort_base_Port_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowPort_base_Port_feature", "_UI_FlowPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 DeprecatedElementsPackage.Literals.FLOW_PORT__BASE_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Direction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDirectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowPort_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowPort_direction_feature", "_UI_FlowPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 DeprecatedElementsPackage.Literals.FLOW_PORT__DIRECTION,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Is Atomic feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsAtomicPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowPort_isAtomic_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowPort_isAtomic_feature", "_UI_FlowPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 DeprecatedElementsPackage.Literals.FLOW_PORT__IS_ATOMIC,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns FlowPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/FlowPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		FlowDirectionKind labelValue = ((FlowPort)object).getDirection();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ?
+			getString("_UI_FlowPort_type") : //$NON-NLS-1$
+			getString("_UI_FlowPort_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(FlowPort.class)) {
+			case DeprecatedElementsPackage.FLOW_PORT__DIRECTION:
+			case DeprecatedElementsPackage.FLOW_PORT__IS_ATOMIC:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowSpecificationItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowSpecificationItemProvider.java
new file mode 100644
index 0000000..e85ab11
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/deprecatedelements/provider/FlowSpecificationItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.deprecatedelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.deprecatedelements.DeprecatedElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.deprecatedelements.FlowSpecification} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FlowSpecificationItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FlowSpecificationItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_InterfacePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Interface feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_InterfacePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowSpecification_base_Interface_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowSpecification_base_Interface_feature", "_UI_FlowSpecification_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 DeprecatedElementsPackage.Literals.FLOW_SPECIFICATION__BASE_INTERFACE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns FlowSpecification.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/FlowSpecification")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_FlowSpecification_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ConformItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ConformItemProvider.java
new file mode 100644
index 0000000..9a7c35d
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ConformItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Conform} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConformItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConformItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_GeneralizationPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Generalization feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_GeneralizationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Conform_base_Generalization_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Conform_base_Generalization_feature", "_UI_Conform_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.CONFORM__BASE_GENERALIZATION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Conform.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Conform")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Conform_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ElementGroupItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ElementGroupItemProvider.java
new file mode 100644
index 0000000..4ddda55
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ElementGroupItemProvider.java
@@ -0,0 +1,288 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.modelelements.ElementGroup;
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.ElementGroup} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementGroupItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ElementGroupItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_CommentPropertyDescriptor(object);
+			addCriterionPropertyDescriptor(object);
+			addMemberPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+			addOrderedMemberPropertyDescriptor(object);
+			addSizePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Comment feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_CommentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_base_Comment_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_base_Comment_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__BASE_COMMENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Criterion feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addCriterionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_criterion_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_criterion_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__CRITERION,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Member feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMemberPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_member_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_member_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__MEMBER,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_name_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_name_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Ordered Member feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOrderedMemberPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_orderedMember_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_orderedMember_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__ORDERED_MEMBER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Size feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSizePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ElementGroup_size_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ElementGroup_size_feature", "_UI_ElementGroup_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.ELEMENT_GROUP__SIZE,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ElementGroup.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ElementGroup")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((ElementGroup)object).getName();
+		return label == null || label.length() == 0 ?
+			getString("_UI_ElementGroup_type") : //$NON-NLS-1$
+			getString("_UI_ElementGroup_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(ElementGroup.class)) {
+			case ModelElementsPackage.ELEMENT_GROUP__CRITERION:
+			case ModelElementsPackage.ELEMENT_GROUP__NAME:
+			case ModelElementsPackage.ELEMENT_GROUP__SIZE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ExposeItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ExposeItemProvider.java
new file mode 100644
index 0000000..3209742
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ExposeItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Expose} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ExposeItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ExposeItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_DependencyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Dependency feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_DependencyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Expose_base_Dependency_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Expose_base_Dependency_feature", "_UI_Expose_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.EXPOSE__BASE_DEPENDENCY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Expose.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Expose")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Expose_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ModelElementsItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ModelElementsItemProviderAdapterFactory.java
new file mode 100644
index 0000000..6d51e53
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ModelElementsItemProviderAdapterFactory.java
@@ -0,0 +1,384 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.modelelements.util.ModelElementsAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ModelElementsItemProviderAdapterFactory extends ModelElementsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ModelElementsItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Conform} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConformItemProvider conformItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Conform}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createConformAdapter() {
+		if (conformItemProvider == null) {
+			conformItemProvider = new ConformItemProvider(this);
+		}
+
+		return conformItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.ElementGroup} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ElementGroupItemProvider elementGroupItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.ElementGroup}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createElementGroupAdapter() {
+		if (elementGroupItemProvider == null) {
+			elementGroupItemProvider = new ElementGroupItemProvider(this);
+		}
+
+		return elementGroupItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Expose} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ExposeItemProvider exposeItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Expose}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createExposeAdapter() {
+		if (exposeItemProvider == null) {
+			exposeItemProvider = new ExposeItemProvider(this);
+		}
+
+		return exposeItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Problem} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ProblemItemProvider problemItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Problem}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createProblemAdapter() {
+		if (problemItemProvider == null) {
+			problemItemProvider = new ProblemItemProvider(this);
+		}
+
+		return problemItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Rationale} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RationaleItemProvider rationaleItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Rationale}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createRationaleAdapter() {
+		if (rationaleItemProvider == null) {
+			rationaleItemProvider = new RationaleItemProvider(this);
+		}
+
+		return rationaleItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Stakeholder} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected StakeholderItemProvider stakeholderItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Stakeholder}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createStakeholderAdapter() {
+		if (stakeholderItemProvider == null) {
+			stakeholderItemProvider = new StakeholderItemProvider(this);
+		}
+
+		return stakeholderItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.View} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ViewItemProvider viewItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.View}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createViewAdapter() {
+		if (viewItemProvider == null) {
+			viewItemProvider = new ViewItemProvider(this);
+		}
+
+		return viewItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.modelelements.Viewpoint} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ViewpointItemProvider viewpointItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Viewpoint}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createViewpointAdapter() {
+		if (viewpointItemProvider == null) {
+			viewpointItemProvider = new ViewpointItemProvider(this);
+		}
+
+		return viewpointItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (conformItemProvider != null) conformItemProvider.dispose();
+		if (elementGroupItemProvider != null) elementGroupItemProvider.dispose();
+		if (exposeItemProvider != null) exposeItemProvider.dispose();
+		if (problemItemProvider != null) problemItemProvider.dispose();
+		if (rationaleItemProvider != null) rationaleItemProvider.dispose();
+		if (stakeholderItemProvider != null) stakeholderItemProvider.dispose();
+		if (viewItemProvider != null) viewItemProvider.dispose();
+		if (viewpointItemProvider != null) viewpointItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ProblemItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ProblemItemProvider.java
new file mode 100644
index 0000000..a595100
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ProblemItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Problem} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ProblemItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ProblemItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_CommentPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Comment feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_CommentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Problem_base_Comment_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Problem_base_Comment_feature", "_UI_Problem_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.PROBLEM__BASE_COMMENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Problem.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Problem")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Problem_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/RationaleItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/RationaleItemProvider.java
new file mode 100644
index 0000000..0584823
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/RationaleItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Rationale} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RationaleItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RationaleItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_CommentPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Comment feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_CommentPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Rationale_base_Comment_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Rationale_base_Comment_feature", "_UI_Rationale_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.RATIONALE__BASE_COMMENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Rationale.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Rationale")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Rationale_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/StakeholderItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/StakeholderItemProvider.java
new file mode 100644
index 0000000..a6c5854
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/StakeholderItemProvider.java
@@ -0,0 +1,214 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+import org.eclipse.papyrus.sysml16.modelelements.Stakeholder;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Stakeholder} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class StakeholderItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public StakeholderItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ClassifierPropertyDescriptor(object);
+			addConcernListPropertyDescriptor(object);
+			addConcernPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Classifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ClassifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Stakeholder_base_Classifier_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Stakeholder_base_Classifier_feature", "_UI_Stakeholder_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.STAKEHOLDER__BASE_CLASSIFIER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concern List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcernListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Stakeholder_concernList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Stakeholder_concernList_feature", "_UI_Stakeholder_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.STAKEHOLDER__CONCERN_LIST,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concern feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcernPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Stakeholder_concern_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Stakeholder_concern_feature", "_UI_Stakeholder_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.STAKEHOLDER__CONCERN,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Stakeholder.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Stakeholder")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Stakeholder_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Stakeholder.class)) {
+			case ModelElementsPackage.STAKEHOLDER__CONCERN:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewItemProvider.java
new file mode 100644
index 0000000..1c889be
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewItemProvider.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.View} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ViewItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ViewItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ClassPropertyDescriptor(object);
+			addStakeholderPropertyDescriptor(object);
+			addViewPointPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_View_base_Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_View_base_Class_feature", "_UI_View_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEW__BASE_CLASS,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stakeholder feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStakeholderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_View_stakeholder_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_View_stakeholder_feature", "_UI_View_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEW__STAKEHOLDER,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the View Point feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addViewPointPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_View_viewPoint_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_View_viewPoint_feature", "_UI_View_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEW__VIEW_POINT,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns View.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/View")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_View_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewpointItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewpointItemProvider.java
new file mode 100644
index 0000000..cc45f2b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/modelelements/provider/ViewpointItemProvider.java
@@ -0,0 +1,335 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.modelelements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.modelelements.ModelElementsPackage;
+import org.eclipse.papyrus.sysml16.modelelements.Viewpoint;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.modelelements.Viewpoint} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ViewpointItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ViewpointItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ClassPropertyDescriptor(object);
+			addConcernPropertyDescriptor(object);
+			addConcernListPropertyDescriptor(object);
+			addLanguagePropertyDescriptor(object);
+			addMethodPropertyDescriptor(object);
+			addPresentationPropertyDescriptor(object);
+			addPurposePropertyDescriptor(object);
+			addStakeholderPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Class feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ClassPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_base_Class_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_base_Class_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__BASE_CLASS,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concern feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcernPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_concern_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_concern_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__CONCERN,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Concern List feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addConcernListPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_concernList_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_concernList_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__CONCERN_LIST,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Language feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addLanguagePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_language_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_language_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__LANGUAGE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Method feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMethodPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_method_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_method_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__METHOD,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Presentation feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPresentationPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_presentation_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_presentation_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__PRESENTATION,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Purpose feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPurposePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_purpose_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_purpose_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__PURPOSE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Stakeholder feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStakeholderPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Viewpoint_stakeholder_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_Viewpoint_stakeholder_feature", "_UI_Viewpoint_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 ModelElementsPackage.Literals.VIEWPOINT__STAKEHOLDER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns Viewpoint.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Viewpoint")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((Viewpoint)object).getPurpose();
+		return label == null || label.length() == 0 ?
+			getString("_UI_Viewpoint_type") : //$NON-NLS-1$
+			getString("_UI_Viewpoint_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(Viewpoint.class)) {
+			case ModelElementsPackage.VIEWPOINT__CONCERN:
+			case ModelElementsPackage.VIEWPOINT__LANGUAGE:
+			case ModelElementsPackage.VIEWPOINT__PRESENTATION:
+			case ModelElementsPackage.VIEWPOINT__PURPOSE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AcceptChangeStructuralFeatureEventActionItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AcceptChangeStructuralFeatureEventActionItemProvider.java
new file mode 100644
index 0000000..87d69fa
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AcceptChangeStructuralFeatureEventActionItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.AcceptChangeStructuralFeatureEventAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AcceptChangeStructuralFeatureEventActionItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AcceptChangeStructuralFeatureEventActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_AcceptEventActionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Accept Event Action feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_AcceptEventActionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AcceptChangeStructuralFeatureEventAction_base_AcceptEventAction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AcceptChangeStructuralFeatureEventAction_base_AcceptEventAction_feature", "_UI_AcceptChangeStructuralFeatureEventAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.ACCEPT_CHANGE_STRUCTURAL_FEATURE_EVENT_ACTION__BASE_ACCEPT_EVENT_ACTION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns AcceptChangeStructuralFeatureEventAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/AcceptChangeStructuralFeatureEventAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_AcceptChangeStructuralFeatureEventAction_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AddFlowPropertyValueOnNestedPortActionItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AddFlowPropertyValueOnNestedPortActionItemProvider.java
new file mode 100644
index 0000000..f067c55
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/AddFlowPropertyValueOnNestedPortActionItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.ElementPropertyPathItemProvider;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.AddFlowPropertyValueOnNestedPortAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AddFlowPropertyValueOnNestedPortActionItemProvider extends ElementPropertyPathItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AddFlowPropertyValueOnNestedPortActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addOnNestedPortPropertyDescriptor(object);
+			addBase_AddStructuralFeatureValueActionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the On Nested Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOnNestedPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AddFlowPropertyValueOnNestedPortAction_onNestedPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AddFlowPropertyValueOnNestedPortAction_onNestedPort_feature", "_UI_AddFlowPropertyValueOnNestedPortAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.ADD_FLOW_PROPERTY_VALUE_ON_NESTED_PORT_ACTION__ON_NESTED_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Add Structural Feature Value Action feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_AddStructuralFeatureValueActionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AddFlowPropertyValueOnNestedPortAction_base_AddStructuralFeatureValueAction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AddFlowPropertyValueOnNestedPortAction_base_AddStructuralFeatureValueAction_feature", "_UI_AddFlowPropertyValueOnNestedPortAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.ADD_FLOW_PROPERTY_VALUE_ON_NESTED_PORT_ACTION__BASE_ADD_STRUCTURAL_FEATURE_VALUE_ACTION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns AddFlowPropertyValueOnNestedPortAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/AddFlowPropertyValueOnNestedPortAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_AddFlowPropertyValueOnNestedPortAction_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ChangeStructuralFeatureEventItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ChangeStructuralFeatureEventItemProvider.java
new file mode 100644
index 0000000..a27b2de
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ChangeStructuralFeatureEventItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ChangeStructuralFeatureEvent} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ChangeStructuralFeatureEventItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ChangeStructuralFeatureEventItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_ChangeEventPropertyDescriptor(object);
+			addStructuralFeaturePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Change Event feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_ChangeEventPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ChangeStructuralFeatureEvent_base_ChangeEvent_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ChangeStructuralFeatureEvent_base_ChangeEvent_feature", "_UI_ChangeStructuralFeatureEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.CHANGE_STRUCTURAL_FEATURE_EVENT__BASE_CHANGE_EVENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Structural Feature feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addStructuralFeaturePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ChangeStructuralFeatureEvent_structuralFeature_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ChangeStructuralFeatureEvent_structuralFeature_feature", "_UI_ChangeStructuralFeatureEvent_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.CHANGE_STRUCTURAL_FEATURE_EVENT__STRUCTURAL_FEATURE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ChangeStructuralFeatureEvent.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ChangeStructuralFeatureEvent")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ChangeStructuralFeatureEvent_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ConjugatedInterfaceBlockItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ConjugatedInterfaceBlockItemProvider.java
new file mode 100644
index 0000000..19e5bc3
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ConjugatedInterfaceBlockItemProvider.java
@@ -0,0 +1,133 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.portsandflows.ConjugatedInterfaceBlock;
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ConjugatedInterfaceBlock} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ConjugatedInterfaceBlockItemProvider extends InterfaceBlockItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConjugatedInterfaceBlockItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addOriginalPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Original feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOriginalPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConjugatedInterfaceBlock_original_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConjugatedInterfaceBlock_original_feature", "_UI_ConjugatedInterfaceBlock_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.CONJUGATED_INTERFACE_BLOCK__ORIGINAL,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ConjugatedInterfaceBlock.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ConjugatedInterfaceBlock")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		ConjugatedInterfaceBlock conjugatedInterfaceBlock = (ConjugatedInterfaceBlock)object;
+		return getString("_UI_ConjugatedInterfaceBlock_type") + " " + conjugatedInterfaceBlock.isEncapsulated(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/DirectedFeatureItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/DirectedFeatureItemProvider.java
new file mode 100644
index 0000000..4c2725f
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/DirectedFeatureItemProvider.java
@@ -0,0 +1,196 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.portsandflows.DirectedFeature;
+import org.eclipse.papyrus.sysml16.portsandflows.FeatureDirectionKind;
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.DirectedFeature} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DirectedFeatureItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DirectedFeatureItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_FeaturePropertyDescriptor(object);
+			addFeatureDirectionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Feature feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_FeaturePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedFeature_base_Feature_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedFeature_base_Feature_feature", "_UI_DirectedFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.DIRECTED_FEATURE__BASE_FEATURE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Feature Direction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addFeatureDirectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DirectedFeature_featureDirection_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_DirectedFeature_featureDirection_feature", "_UI_DirectedFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.DIRECTED_FEATURE__FEATURE_DIRECTION,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns DirectedFeature.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/DirectedFeature")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		FeatureDirectionKind labelValue = ((DirectedFeature)object).getFeatureDirection();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ?
+			getString("_UI_DirectedFeature_type") : //$NON-NLS-1$
+			getString("_UI_DirectedFeature_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(DirectedFeature.class)) {
+			case PortsAndFlowsPackage.DIRECTED_FEATURE__FEATURE_DIRECTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FlowPropertyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FlowPropertyItemProvider.java
new file mode 100644
index 0000000..9a57482
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FlowPropertyItemProvider.java
@@ -0,0 +1,196 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.portsandflows.FlowDirectionKind;
+import org.eclipse.papyrus.sysml16.portsandflows.FlowProperty;
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.FlowProperty} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FlowPropertyItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FlowPropertyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PropertyPropertyDescriptor(object);
+			addDirectionPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowProperty_base_Property_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowProperty_base_Property_feature", "_UI_FlowProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.FLOW_PROPERTY__BASE_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Direction feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDirectionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FlowProperty_direction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FlowProperty_direction_feature", "_UI_FlowProperty_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.FLOW_PROPERTY__DIRECTION,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns FlowProperty.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/FlowProperty")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		FlowDirectionKind labelValue = ((FlowProperty)object).getDirection();
+		String label = labelValue == null ? null : labelValue.toString();
+		return label == null || label.length() == 0 ?
+			getString("_UI_FlowProperty_type") : //$NON-NLS-1$
+			getString("_UI_FlowProperty_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(FlowProperty.class)) {
+			case PortsAndFlowsPackage.FLOW_PROPERTY__DIRECTION:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FullPortItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FullPortItemProvider.java
new file mode 100644
index 0000000..93d82b5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/FullPortItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.FullPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FullPortItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FullPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_FullPort_base_Port_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_FullPort_base_Port_feature", "_UI_FullPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.FULL_PORT__BASE_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns FullPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/FullPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_FullPort_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InterfaceBlockItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InterfaceBlockItemProvider.java
new file mode 100644
index 0000000..2efa602
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InterfaceBlockItemProvider.java
@@ -0,0 +1,125 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.BlockItemProvider;
+
+import org.eclipse.papyrus.sysml16.portsandflows.InterfaceBlock;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.InterfaceBlock} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class InterfaceBlockItemProvider extends BlockItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InterfaceBlockItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns InterfaceBlock.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/InterfaceBlock")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		InterfaceBlock interfaceBlock = (InterfaceBlock)object;
+		return getString("_UI_InterfaceBlock_type") + " " + interfaceBlock.isEncapsulated(); //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InvocationOnNestedPortActionItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InvocationOnNestedPortActionItemProvider.java
new file mode 100644
index 0000000..ffdb79b
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/InvocationOnNestedPortActionItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.ElementPropertyPathItemProvider;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.InvocationOnNestedPortAction} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class InvocationOnNestedPortActionItemProvider extends ElementPropertyPathItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public InvocationOnNestedPortActionItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_InvocationActionPropertyDescriptor(object);
+			addOnNestedPortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Invocation Action feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_InvocationActionPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_InvocationOnNestedPortAction_base_InvocationAction_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_InvocationOnNestedPortAction_base_InvocationAction_feature", "_UI_InvocationOnNestedPortAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.INVOCATION_ON_NESTED_PORT_ACTION__BASE_INVOCATION_ACTION,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the On Nested Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOnNestedPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_InvocationOnNestedPortAction_onNestedPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_InvocationOnNestedPortAction_onNestedPort_feature", "_UI_InvocationOnNestedPortAction_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.INVOCATION_ON_NESTED_PORT_ACTION__ON_NESTED_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns InvocationOnNestedPortAction.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/InvocationOnNestedPortAction")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_InvocationOnNestedPortAction_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ItemFlowItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ItemFlowItemProvider.java
new file mode 100644
index 0000000..f4d24d1
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ItemFlowItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ItemFlow} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ItemFlowItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ItemFlowItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_InformationFlowPropertyDescriptor(object);
+			addItemPropertyPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Information Flow feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_InformationFlowPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItemFlow_base_InformationFlow_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItemFlow_base_InformationFlow_feature", "_UI_ItemFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.ITEM_FLOW__BASE_INFORMATION_FLOW,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Item Property feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addItemPropertyPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ItemFlow_itemProperty_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ItemFlow_itemProperty_feature", "_UI_ItemFlow_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.ITEM_FLOW__ITEM_PROPERTY,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ItemFlow.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ItemFlow")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ItemFlow_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/PortsAndFlowsItemProviderAdapterFactory.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/PortsAndFlowsItemProviderAdapterFactory.java
new file mode 100644
index 0000000..b08f2f2
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/PortsAndFlowsItemProviderAdapterFactory.java
@@ -0,0 +1,480 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+
+import org.eclipse.papyrus.sysml16.portsandflows.util.PortsAndFlowsAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class PortsAndFlowsItemProviderAdapterFactory extends PortsAndFlowsAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+	/**
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ComposedAdapterFactory parentAdapterFactory;
+
+	/**
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+	/**
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+	/**
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PortsAndFlowsItemProviderAdapterFactory() {
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.AcceptChangeStructuralFeatureEventAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AcceptChangeStructuralFeatureEventActionItemProvider acceptChangeStructuralFeatureEventActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.AcceptChangeStructuralFeatureEventAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createAcceptChangeStructuralFeatureEventActionAdapter() {
+		if (acceptChangeStructuralFeatureEventActionItemProvider == null) {
+			acceptChangeStructuralFeatureEventActionItemProvider = new AcceptChangeStructuralFeatureEventActionItemProvider(this);
+		}
+
+		return acceptChangeStructuralFeatureEventActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.ChangeStructuralFeatureEvent} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ChangeStructuralFeatureEventItemProvider changeStructuralFeatureEventItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ChangeStructuralFeatureEvent}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createChangeStructuralFeatureEventAdapter() {
+		if (changeStructuralFeatureEventItemProvider == null) {
+			changeStructuralFeatureEventItemProvider = new ChangeStructuralFeatureEventItemProvider(this);
+		}
+
+		return changeStructuralFeatureEventItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.DirectedFeature} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DirectedFeatureItemProvider directedFeatureItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.DirectedFeature}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createDirectedFeatureAdapter() {
+		if (directedFeatureItemProvider == null) {
+			directedFeatureItemProvider = new DirectedFeatureItemProvider(this);
+		}
+
+		return directedFeatureItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.FlowProperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FlowPropertyItemProvider flowPropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.FlowProperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createFlowPropertyAdapter() {
+		if (flowPropertyItemProvider == null) {
+			flowPropertyItemProvider = new FlowPropertyItemProvider(this);
+		}
+
+		return flowPropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.FullPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FullPortItemProvider fullPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.FullPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createFullPortAdapter() {
+		if (fullPortItemProvider == null) {
+			fullPortItemProvider = new FullPortItemProvider(this);
+		}
+
+		return fullPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.InterfaceBlock} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected InterfaceBlockItemProvider interfaceBlockItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.InterfaceBlock}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createInterfaceBlockAdapter() {
+		if (interfaceBlockItemProvider == null) {
+			interfaceBlockItemProvider = new InterfaceBlockItemProvider(this);
+		}
+
+		return interfaceBlockItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.InvocationOnNestedPortAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected InvocationOnNestedPortActionItemProvider invocationOnNestedPortActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.InvocationOnNestedPortAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createInvocationOnNestedPortActionAdapter() {
+		if (invocationOnNestedPortActionItemProvider == null) {
+			invocationOnNestedPortActionItemProvider = new InvocationOnNestedPortActionItemProvider(this);
+		}
+
+		return invocationOnNestedPortActionItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.ItemFlow} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ItemFlowItemProvider itemFlowItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ItemFlow}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createItemFlowAdapter() {
+		if (itemFlowItemProvider == null) {
+			itemFlowItemProvider = new ItemFlowItemProvider(this);
+		}
+
+		return itemFlowItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.ProxyPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ProxyPortItemProvider proxyPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ProxyPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createProxyPortAdapter() {
+		if (proxyPortItemProvider == null) {
+			proxyPortItemProvider = new ProxyPortItemProvider(this);
+		}
+
+		return proxyPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.TriggerOnNestedPort} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected TriggerOnNestedPortItemProvider triggerOnNestedPortItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.TriggerOnNestedPort}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createTriggerOnNestedPortAdapter() {
+		if (triggerOnNestedPortItemProvider == null) {
+			triggerOnNestedPortItemProvider = new TriggerOnNestedPortItemProvider(this);
+		}
+
+		return triggerOnNestedPortItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.ConjugatedInterfaceBlock} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConjugatedInterfaceBlockItemProvider conjugatedInterfaceBlockItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ConjugatedInterfaceBlock}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createConjugatedInterfaceBlockAdapter() {
+		if (conjugatedInterfaceBlockItemProvider == null) {
+			conjugatedInterfaceBlockItemProvider = new ConjugatedInterfaceBlockItemProvider(this);
+		}
+
+		return conjugatedInterfaceBlockItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.sysml16.portsandflows.AddFlowPropertyValueOnNestedPortAction} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AddFlowPropertyValueOnNestedPortActionItemProvider addFlowPropertyValueOnNestedPortActionItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.AddFlowPropertyValueOnNestedPortAction}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createAddFlowPropertyValueOnNestedPortActionAdapter() {
+		if (addFlowPropertyValueOnNestedPortActionItemProvider == null) {
+			addFlowPropertyValueOnNestedPortActionItemProvider = new AddFlowPropertyValueOnNestedPortActionItemProvider(this);
+		}
+
+		return addFlowPropertyValueOnNestedPortActionItemProvider;
+	}
+
+	/**
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ComposeableAdapterFactory getRootAdapterFactory() {
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
+
+	/**
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object type) {
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
+
+	/**
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter adapt(Notifier notifier, Object type) {
+		return super.adapt(notifier, this);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object adapt(Object object, Object type) {
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
+
+		return null;
+	}
+
+	/**
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void addListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.addListener(notifyChangedListener);
+	}
+
+	/**
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void removeListener(INotifyChangedListener notifyChangedListener) {
+		changeNotifier.removeListener(notifyChangedListener);
+	}
+
+	/**
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void fireNotifyChanged(Notification notification) {
+		changeNotifier.fireNotifyChanged(notification);
+
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
+
+	/**
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		if (acceptChangeStructuralFeatureEventActionItemProvider != null) acceptChangeStructuralFeatureEventActionItemProvider.dispose();
+		if (changeStructuralFeatureEventItemProvider != null) changeStructuralFeatureEventItemProvider.dispose();
+		if (directedFeatureItemProvider != null) directedFeatureItemProvider.dispose();
+		if (flowPropertyItemProvider != null) flowPropertyItemProvider.dispose();
+		if (fullPortItemProvider != null) fullPortItemProvider.dispose();
+		if (interfaceBlockItemProvider != null) interfaceBlockItemProvider.dispose();
+		if (invocationOnNestedPortActionItemProvider != null) invocationOnNestedPortActionItemProvider.dispose();
+		if (itemFlowItemProvider != null) itemFlowItemProvider.dispose();
+		if (proxyPortItemProvider != null) proxyPortItemProvider.dispose();
+		if (triggerOnNestedPortItemProvider != null) triggerOnNestedPortItemProvider.dispose();
+		if (conjugatedInterfaceBlockItemProvider != null) conjugatedInterfaceBlockItemProvider.dispose();
+		if (addFlowPropertyValueOnNestedPortActionItemProvider != null) addFlowPropertyValueOnNestedPortActionItemProvider.dispose();
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ProxyPortItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ProxyPortItemProvider.java
new file mode 100644
index 0000000..7b6d708
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/ProxyPortItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.ProxyPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ProxyPortItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ProxyPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_PortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_PortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ProxyPort_base_Port_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_ProxyPort_base_Port_feature", "_UI_ProxyPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.PROXY_PORT__BASE_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns ProxyPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ProxyPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_ProxyPort_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/TriggerOnNestedPortItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/TriggerOnNestedPortItemProvider.java
new file mode 100644
index 0000000..2b2104c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/portsandflows/provider/TriggerOnNestedPortItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.portsandflows.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+import org.eclipse.papyrus.sysml16.blocks.provider.ElementPropertyPathItemProvider;
+
+import org.eclipse.papyrus.sysml16.portsandflows.PortsAndFlowsPackage;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.portsandflows.TriggerOnNestedPort} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TriggerOnNestedPortItemProvider extends ElementPropertyPathItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TriggerOnNestedPortItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_TriggerPropertyDescriptor(object);
+			addOnNestedPortPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Trigger feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_TriggerPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TriggerOnNestedPort_base_Trigger_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TriggerOnNestedPort_base_Trigger_feature", "_UI_TriggerOnNestedPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.TRIGGER_ON_NESTED_PORT__BASE_TRIGGER,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the On Nested Port feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addOnNestedPortPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_TriggerOnNestedPort_onNestedPort_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_TriggerOnNestedPort_onNestedPort_feature", "_UI_TriggerOnNestedPort_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 PortsAndFlowsPackage.Literals.TRIGGER_ON_NESTED_PORT__ON_NESTED_PORT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns TriggerOnNestedPort.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/TriggerOnNestedPort")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_TriggerOnNestedPort_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/provider/SysMLEditPlugin.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/provider/SysMLEditPlugin.java
new file mode 100644
index 0000000..688839c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/provider/SysMLEditPlugin.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+import org.eclipse.uml2.uml.edit.UMLEditPlugin;
+
+/**
+ * This is the central singleton for the SysML edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class SysMLEditPlugin extends EMFPlugin {
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final SysMLEditPlugin INSTANCE = new SysMLEditPlugin();
+
+	/**
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static Implementation plugin;
+
+	/**
+	 * Create the instance.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SysMLEditPlugin() {
+		super
+		  (new ResourceLocator [] {
+		     EcoreEditPlugin.INSTANCE,
+		     UMLEditPlugin.INSTANCE,
+		   });
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getPluginResourceLocator() {
+		return plugin;
+	}
+
+	/**
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the singleton instance.
+	 * @generated
+	 */
+	public static Implementation getPlugin() {
+		return plugin;
+	}
+
+	/**
+	 * The actual implementation of the Eclipse <b>Plugin</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static class Implementation extends EclipsePlugin {
+		/**
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		public Implementation() {
+			super();
+
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/AbstractRequirementItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/AbstractRequirementItemProvider.java
new file mode 100644
index 0000000..f2e173c
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/AbstractRequirementItemProvider.java
@@ -0,0 +1,368 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.requirements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.sysml16.provider.SysMLEditPlugin;
+
+import org.eclipse.papyrus.sysml16.requirements.AbstractRequirement;
+import org.eclipse.papyrus.sysml16.requirements.RequirementsPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.requirements.AbstractRequirement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AbstractRequirementItemProvider 
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AbstractRequirementItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+			addBase_NamedElementPropertyDescriptor(object);
+			addDerivedPropertyDescriptor(object);
+			addDerivedFromPropertyDescriptor(object);
+			addIdPropertyDescriptor(object);
+			addMasterPropertyDescriptor(object);
+			addRefinedByPropertyDescriptor(object);
+			addSatisfiedByPropertyDescriptor(object);
+			addTextPropertyDescriptor(object);
+			addTracedToPropertyDescriptor(object);
+			addVerifiedByPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Base Named Element feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addBase_NamedElementPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_base_NamedElement_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_base_NamedElement_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__BASE_NAMED_ELEMENT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Derived feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDerivedPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_derived_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_derived_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__DERIVED,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Derived From feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addDerivedFromPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_derivedFrom_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_derivedFrom_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__DERIVED_FROM,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Id feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIdPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_id_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_id_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__ID,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Master feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addMasterPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_master_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_master_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__MASTER,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Refined By feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addRefinedByPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_refinedBy_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_refinedBy_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__REFINED_BY,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Satisfied By feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSatisfiedByPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_satisfiedBy_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_satisfiedBy_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__SATISFIED_BY,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Text feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTextPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_text_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_text_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__TEXT,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Traced To feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addTracedToPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_tracedTo_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_tracedTo_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__TRACED_TO,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Verified By feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addVerifiedByPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_AbstractRequirement_verifiedBy_feature"), //$NON-NLS-1$
+				 getString("_UI_PropertyDescriptor_description", "_UI_AbstractRequirement_verifiedBy_feature", "_UI_AbstractRequirement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+				 RequirementsPackage.Literals.ABSTRACT_REQUIREMENT__VERIFIED_BY,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		String label = ((AbstractRequirement)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_AbstractRequirement_type") : //$NON-NLS-1$
+			getString("_UI_AbstractRequirement_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(AbstractRequirement.class)) {
+			case RequirementsPackage.ABSTRACT_REQUIREMENT__ID:
+			case RequirementsPackage.ABSTRACT_REQUIREMENT__TEXT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return SysMLEditPlugin.INSTANCE;
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/CopyItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/CopyItemProvider.java
new file mode 100644
index 0000000..68befe5
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/CopyItemProvider.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.requirements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.requirements.Copy} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CopyItemProvider extends TraceItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CopyItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns Copy.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Copy")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Copy_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/DeriveReqtItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/DeriveReqtItemProvider.java
new file mode 100644
index 0000000..2bb03bf
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/DeriveReqtItemProvider.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ * 
+ * SPDX-License-Identifier: EPL-2.0
+ * 
+ * Contributors:
+ *   Nicolas FAUVERGUE (CEA LIST) nicolas.fauvergue@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.sysml16.requirements.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.sysml16.requirements.DeriveReqt} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DeriveReqtItemProvider extends TraceItemProvider {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DeriveReqtItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
+
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This returns DeriveReqt.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/DeriveReqt")); //$NON-NLS-1$
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_DeriveReqt_type"); //$NON-NLS-1$
+	}
+
+
+	/**
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
+
+	/**
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
+
+}
diff --git a/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/RefineItemProvider.java b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/RefineItemProvider.java
new file mode 100644
index 0000000..fed0a20
--- /dev/null
+++ b/plugins/core/org.eclipse.papyrus.sysml16.edit/src-gen/org/eclipse/papyrus/sysml16/requirements/provider/RefineItemProvider.java
@@ -0,0 +1,148 @@
+/**
+ * Copyright (c) 2019 CEA LIST.
+ * 
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/