Bug 566309 - [Robotics] Integrate tables for Assertions, Contracts & NFProperties (ITP contribution)

- Avoid issue due to double stereotype application
- Fix NLS issues

Change-Id: I3712f7d3cf5cc5a6835f33b5ba760f9e22a3199b
Signed-off-by: Ansgar Radermacher <ansgar.radermacher@cea.fr>
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ExpressionLanguagesHelper.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ExpressionLanguagesHelper.java
index 0d65d0e..9426d05 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ExpressionLanguagesHelper.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ExpressionLanguagesHelper.java
@@ -9,7 +9,7 @@
  *
  * Contributors:
  * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
+ *   Angel L�pez, Tecnalia - Implementation
  *
  *****************************************************************************/
 package org.eclipse.papyrus.robotics.assertions.languages;
@@ -22,7 +22,7 @@
 import org.eclipse.core.runtime.Platform;
 
 public class ExpressionLanguagesHelper {
-	public static final String EXPRESSIONLANGUAGES_EXTENSIONPOINT = "org.eclipse.papyrus.robotics.assertions.languages";
+	public static final String EXPRESSIONLANGUAGES_EXTENSIONPOINT = "org.eclipse.papyrus.robotics.assertions.languages"; //$NON-NLS-1$
 
 	public static List<IExpressionLanguage> getAllExpressionLanguages() {
 		List<IExpressionLanguage> result = new ArrayList<IExpressionLanguage>();
@@ -30,7 +30,7 @@
 				.getConfigurationElementsFor(EXPRESSIONLANGUAGES_EXTENSIONPOINT);
 		for (IConfigurationElement extensionPoint : extensionPoints) {
 			try {
-				result.add((IExpressionLanguage) extensionPoint.createExecutableExtension("class"));
+				result.add((IExpressionLanguage) extensionPoint.createExecutableExtension("class")); //$NON-NLS-1$
 			} catch (CoreException e) {
 				e.printStackTrace();
 			}
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ocl/OCLExpressionLanguage.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ocl/OCLExpressionLanguage.java
index 9b734cd..beee9d7 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ocl/OCLExpressionLanguage.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.languages/src/org/eclipse/papyrus/robotics/assertions/languages/ocl/OCLExpressionLanguage.java
@@ -9,7 +9,7 @@
  *
  * Contributors:
  * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
+ *   Angel L�pez, Tecnalia - Implementation
  *
  *****************************************************************************/
 package org.eclipse.papyrus.robotics.assertions.languages.ocl;
@@ -24,11 +24,12 @@
 import org.eclipse.ocl.pivot.utilities.OCLHelper;
 import org.eclipse.papyrus.robotics.assertions.languages.IExpressionLanguage;
 
+@SuppressWarnings("deprecation")
 public class OCLExpressionLanguage implements IExpressionLanguage {
 
 	@Override
 	public String getName() {
-		return "OCL";
+		return "OCL"; //$NON-NLS-1$
 	}
 	
 	@Override
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/model/assertions.genmodel b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/model/assertions.genmodel
index f19b579..076af64 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/model/assertions.genmodel
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/model/assertions.genmodel
@@ -3,8 +3,9 @@
     xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/uml2/2.2.0/GenModel"
     modelDirectory="/org.eclipse.papyrus.robotics.assertions.profile/src-gen"
     modelPluginID="org.eclipse.papyrus.robotics.assertions.profile" modelName="Assertions"
-    rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" importerID="org.eclipse.uml2.uml.ecore.importer"
-    complianceLevel="8.0" copyrightFields="false" usedGenPackages="../../org.eclipse.papyrus.robotics.bpc.profile/model/bpc.profile.genmodel#//bpc ../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
+    nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
+    usedGenPackages="../../org.eclipse.papyrus.robotics.bpc.profile/model/bpc.profile.genmodel#//bpc ../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
     operationReflection="true" importOrganizing="true">
   <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
     <details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Assertion.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Assertion.java
index 67afc07..1bbd7ec 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Assertion.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Assertion.java
@@ -1,20 +1,9 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions;
 
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.Entity;
+
 import org.eclipse.uml2.uml.Constraint;
 
 /**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsFactory.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsFactory.java
index 3bd188e..240dfb1 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsFactory.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsFactory.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions;
 
 import org.eclipse.emf.ecore.EFactory;
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsPackage.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsPackage.java
index e3d68b6..7f3e976 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsPackage.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/AssertionsPackage.java
@@ -1,23 +1,12 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions;
 
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.EReference;
+
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.BPCPackage;
 
 /**
@@ -43,7 +32,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	String eNAME = "assertions";
+	String eNAME = "assertions"; //$NON-NLS-1$
 
 	/**
 	 * The package namespace URI.
@@ -51,7 +40,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	String eNS_URI = "http://www.eclipse.org/papyrus/robotics/assertions/1";
+	String eNS_URI = "http://www.eclipse.org/papyrus/robotics/assertions/1"; //$NON-NLS-1$
 
 	/**
 	 * The package namespace name.
@@ -59,7 +48,7 @@
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	String eNS_PREFIX = "assertions";
+	String eNS_PREFIX = "assertions"; //$NON-NLS-1$
 
 	/**
 	 * The singleton instance of the package.
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Contract.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Contract.java
index fca8437..76c6962 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Contract.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/Contract.java
@@ -1,21 +1,11 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions;
 
 import org.eclipse.emf.common.util.EList;
+
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.Entity;
+
 import org.eclipse.uml2.uml.Comment;
 
 /**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/NFProperty.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/NFProperty.java
index cdaf4d8..3cacd3f 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/NFProperty.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/NFProperty.java
@@ -1,20 +1,9 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions;
 
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.Entity;
+
 import org.eclipse.uml2.uml.OpaqueExpression;
 import org.eclipse.uml2.uml.Property;
 
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionImpl.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionImpl.java
index 5cbb5a8..7ce13c5 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionImpl.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionImpl.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.impl;
 
 import org.eclipse.emf.common.notify.Notification;
@@ -20,10 +8,12 @@
 import org.eclipse.emf.ecore.InternalEObject;
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.Assertion;
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.AssertionsPackage;
 
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.impl.EntityImpl;
+
 import org.eclipse.uml2.uml.Constraint;
 
 /**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsFactoryImpl.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsFactoryImpl.java
index 3b8a00a..395d61d 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsFactoryImpl.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsFactoryImpl.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.impl;
 
 import org.eclipse.emf.ecore.EClass;
@@ -72,7 +60,7 @@
 			case AssertionsPackage.CONTRACT: return createContract();
 			case AssertionsPackage.NF_PROPERTY: return createNFProperty();
 			default:
-				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
 		}
 	}
 
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsPackageImpl.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsPackageImpl.java
index 226be5d..9cdef53 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsPackageImpl.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/AssertionsPackageImpl.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.impl;
 
 import org.eclipse.emf.ecore.EAttribute;
@@ -29,6 +17,7 @@
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.NFProperty;
 
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.BPCPackage;
+
 import org.eclipse.uml2.types.TypesPackage;
 
 import org.eclipse.uml2.uml.UMLPackage;
@@ -309,18 +298,18 @@
 		nfPropertyEClass.getESuperTypes().add(theBPCPackage.getEntity());
 
 		// Initialize classes, features, and operations; add parameters
-		initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getAssertion_Base_Constraint(), theUMLPackage.getConstraint(), null, "base_Constraint", null, 0, 1, Assertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+		initEReference(getAssertion_Base_Constraint(), theUMLPackage.getConstraint(), null, "base_Constraint", null, 0, 1, Assertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
 
-		initEClass(contractEClass, Contract.class, "Contract", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getContract_Name(), theTypesPackage.getString(), "name", null, 1, 1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-		initEReference(getContract_Assumptions(), this.getAssertion(), null, "assumptions", null, 0, -1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-		initEReference(getContract_Guarantees(), this.getAssertion(), null, "guarantees", null, 0, -1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-		initEReference(getContract_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEClass(contractEClass, Contract.class, "Contract", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+		initEAttribute(getContract_Name(), theTypesPackage.getString(), "name", null, 1, 1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+		initEReference(getContract_Assumptions(), this.getAssertion(), null, "assumptions", null, 0, -1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+		initEReference(getContract_Guarantees(), this.getAssertion(), null, "guarantees", null, 0, -1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+		initEReference(getContract_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 0, 1, Contract.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
 
-		initEClass(nfPropertyEClass, NFProperty.class, "NFProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getNFProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, NFProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-		initEReference(getNFProperty_Expression(), theUMLPackage.getOpaqueExpression(), null, "expression", null, 0, 1, NFProperty.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+		initEClass(nfPropertyEClass, NFProperty.class, "NFProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+		initEReference(getNFProperty_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, NFProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+		initEReference(getNFProperty_Expression(), theUMLPackage.getOpaqueExpression(), null, "expression", null, 0, 1, NFProperty.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
 
 		// Create resource
 		createResource(eNS_URI);
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/ContractImpl.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/ContractImpl.java
index 10d3262..27b1dbf 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/ContractImpl.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/ContractImpl.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.impl;
 
 import java.util.Collection;
@@ -24,6 +12,7 @@
 import org.eclipse.emf.ecore.InternalEObject;
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
 import org.eclipse.emf.ecore.util.EObjectResolvingEList;
 
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.Assertion;
@@ -31,6 +20,7 @@
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.Contract;
 
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.impl.EntityImpl;
+
 import org.eclipse.uml2.uml.Comment;
 
 /**
@@ -310,7 +300,7 @@
 		if (eIsProxy()) return super.toString();
 
 		StringBuilder result = new StringBuilder(super.toString());
-		result.append(" (name: ");
+		result.append(" (name: "); //$NON-NLS-1$
 		result.append(name);
 		result.append(')');
 		return result.toString();
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/NFPropertyImpl.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/NFPropertyImpl.java
index b80606d..5d061d4 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/NFPropertyImpl.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/impl/NFPropertyImpl.java
@@ -1,29 +1,21 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.impl;
 
 import org.eclipse.emf.common.notify.Notification;
+
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
+
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.AssertionsPackage;
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.NFProperty;
+
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.impl.EntityImpl;
+
 import org.eclipse.uml2.uml.OpaqueExpression;
 import org.eclipse.uml2.uml.Property;
-import org.eclipse.uml2.uml.ValueSpecification;
 
 /**
  * <!-- begin-user-doc -->
@@ -49,6 +41,7 @@
 	 * @ordered
 	 */
 	protected Property base_Property;
+
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -122,14 +115,13 @@
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @generated NOT
+	 * @generated
 	 */
 	public OpaqueExpression basicGetExpression() {
-		ValueSpecification vs = getBase_Property().getDefaultValue();
-		if (vs instanceof OpaqueExpression) {
-			return (OpaqueExpression) vs;
-		}
-		return null;
+		// TODO: implement this method to return the 'Expression' reference
+		// -> do not perform proxy resolution
+		// Ensure that you remove @generated or mark it @generated NOT
+		throw new UnsupportedOperationException();
 	}
 
 	/**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsAdapterFactory.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsAdapterFactory.java
index e054abb..0279ebd 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsAdapterFactory.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsAdapterFactory.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.util;
 
 import org.eclipse.emf.common.notify.Adapter;
@@ -22,6 +10,7 @@
 import org.eclipse.emf.ecore.EObject;
 
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.*;
+
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.Entity;
 
 /**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsSwitch.java b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsSwitch.java
index 36228be..95fabcb 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsSwitch.java
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.profile/src-gen/org/eclipse/papyrus/robotics/assertions/profile/assertions/util/AssertionsSwitch.java
@@ -1,17 +1,5 @@
-/*****************************************************************************
- * Copyright (c) 2020 TECNALIA.
- *
- * 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/
- *
- *
- * Contributors:
- * 	 Jabier Martinez, Tecnalia - Initial design and implementation
- *   Angel López, Tecnalia - Implementation
- *
- *****************************************************************************/
+/**
+ */
 package org.eclipse.papyrus.robotics.assertions.profile.assertions.util;
 
 import org.eclipse.emf.ecore.EObject;
@@ -20,6 +8,7 @@
 import org.eclipse.emf.ecore.util.Switch;
 
 import org.eclipse.papyrus.robotics.assertions.profile.assertions.*;
+
 import org.eclipse.papyrus.robotics.bpc.profile.bpc.Entity;
 
 /**
diff --git a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.types/resources/assertions.elementtypesconfigurations b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.types/resources/assertions.elementtypesconfigurations
index 24f2c6c..61f6640 100644
--- a/plugins/assertions/org.eclipse.papyrus.robotics.assertions.types/resources/assertions.elementtypesconfigurations
+++ b/plugins/assertions/org.eclipse.papyrus.robotics.assertions.types/resources/assertions.elementtypesconfigurations
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<elementtypesconfigurations:ElementTypeSetConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:applystereotypeadvice="http://www.eclipse.org/papyrus/uml/types/applystereotypeadvice/1.1" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:stereotypematcher="http://www.eclipse.org/papyrus/uml/types/stereotypematcher/1.1" xmi:id="org.eclipse.papyrus.robotics.assertions.elementTypes" identifier="org.eclipse.papyrus.robotics.assertions.elementTypes" name="assertions" metamodelNsURI="http://www.eclipse.org/uml2/5.0.0/UML">
+<elementtypesconfigurations:ElementTypeSetConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:stereotypematcher="http://www.eclipse.org/papyrus/uml/types/stereotypematcher/1.1" xmi:id="org.eclipse.papyrus.robotics.assertions.elementTypes" identifier="org.eclipse.papyrus.robotics.assertions.elementTypes" name="assertions" metamodelNsURI="http://www.eclipse.org/uml2/5.0.0/UML">
   <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.robotics.assertions.Assertion" identifier="org.eclipse.papyrus.robotics.assertions.Assertion" name="Assertion" hint="UML::Constraint" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
     <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ssdMoJ_uEeqKVrOYUnGfWQ" iconPath="/icons/full/obj16/Constraint.gif" bundleId="org.eclipse.uml2.uml.edit"/>
     <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ssdMoZ_uEeqKVrOYUnGfWQ">
@@ -21,21 +21,6 @@
     </matcherConfiguration>
     <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
   </elementTypeConfigurations>
-  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ssdzsZ_uEeqKVrOYUnGfWQ" description="Apply Stereotype Assertion" identifier="org.eclipse.papyrus.robotics.assertions.assertion" target="org.eclipse.papyrus.robotics.assertions.Assertion">
-    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ssdzsp_uEeqKVrOYUnGfWQ" stereotypeQualifiedName="assertions::Assertion" updateName="true">
-      <requiredProfiles>assertions</requiredProfiles>
-    </stereotypesToApply>
-  </adviceBindingsConfigurations>
-  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ssdzs5_uEeqKVrOYUnGfWQ" description="Apply Stereotype Contract" identifier="org.eclipse.papyrus.robotics.assertions.contract" target="org.eclipse.papyrus.robotics.assertions.Contract">
-    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_sseawJ_uEeqKVrOYUnGfWQ" stereotypeQualifiedName="assertions::Contract" updateName="true">
-      <requiredProfiles>assertions</requiredProfiles>
-    </stereotypesToApply>
-  </adviceBindingsConfigurations>
-  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_sseawZ_uEeqKVrOYUnGfWQ" description="Apply Stereotype NFProperty" identifier="org.eclipse.papyrus.robotics.assertions.nFProperty" target="org.eclipse.papyrus.robotics.assertions.NFProperty">
-    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_sseawp_uEeqKVrOYUnGfWQ" stereotypeQualifiedName="assertions::NFProperty" updateName="true">
-      <requiredProfiles>assertions</requiredProfiles>
-    </stereotypesToApply>
-  </adviceBindingsConfigurations>
   <adviceBindingsConfigurations xmi:type="elementtypesconfigurations:AdviceBindingConfiguration" xmi:id="__evLUMEpEeq6pesfr_g4aw" description="NFProperty advice, configures name, adds default value" identifier="org.eclipse.papyrus.robotics.assertions.types.advice.NFPropertyAdvice" target="org.eclipse.papyrus.robotics.assertions.NFProperty" editHelperAdviceClassName="org.eclipse.papyrus.robotics.assertions.types.advice.NFPropertyAdvice"/>
   <adviceBindingsConfigurations xmi:type="elementtypesconfigurations:AdviceBindingConfiguration" xmi:id="__evLUMEpEeqsdfsdf_bfgw" description="Contract advice, configures name" identifier="org.eclipse.papyrus.robotics.assertions.types.advice.ContractAdvice" target="org.eclipse.papyrus.robotics.assertions.Contract" editHelperAdviceClassName="org.eclipse.papyrus.robotics.assertions.types.advice.ContractAdvice"/>
   <adviceBindingsConfigurations xmi:type="elementtypesconfigurations:AdviceBindingConfiguration" xmi:id="__evLUMEpEeq6pesfsdgsdg" description="Assertion advice, configures name" identifier="org.eclipse.papyrus.robotics.assertions.types.advice.AssertionAdvice" target="org.eclipse.papyrus.robotics.assertions.Assertion" editHelperAdviceClassName="org.eclipse.papyrus.robotics.assertions.types.advice.AssertionAdvice"/>