- Add possibility to customize UUIDs via an extension point
- Rename (CTX/properties)

Signed-off-by: Ansgar Radermacher <ansgar.radermacher@cea.fr>
diff --git a/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/architecture/architectureconcepts.architecture b/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/architecture/architectureconcepts.architecture
index 0253a3d..2bf55db 100644
--- a/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/architecture/architectureconcepts.architecture
+++ b/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/architecture/architectureconcepts.architecture
@@ -1,9 +1,31 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<architecture:ArchitectureDomain xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:gmfdiagrepresentation="http://www.eclipse.org/papyrus/infra/gmfdiag/representation" xmlns:paletteconfiguration="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.8" xmlns:representation="http://www.eclipse.org/papyrus/infra/core/architecture/representation" xmi:id="_CBeUoEMqEeeNE9tB5iN5zA" id="org.eclipse.papyrus.esf" name="Eclipse Safety Framework" description="Architecture domain for ESF">
-  <stakeholders xmi:type="architecture:Stakeholder" xmi:id="_SFcaQOGpEeewEL8Y1DXhbQ" id="org.eclipse.papyrus.esf.SafetyDesigner" name="Safety Designer" description="Tier 2 Expert within the Robotics Domain" concerns="_SqiO4OGqEeewEL8Y1DXhbQ"/>
+<architecture:ArchitectureDomain xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:gmfdiagrepresentation="http://www.eclipse.org/papyrus/infra/gmfdiag/representation" xmlns:nattablerepresentation="http://www.eclipse.org/papyrus/infra/nattable/representation" xmlns:paletteconfiguration="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.8" xmlns:representation="http://www.eclipse.org/papyrus/infra/core/architecture/representation" xmi:id="_CBeUoEMqEeeNE9tB5iN5zA" id="org.eclipse.papyrus.esf" name="Eclipse Safety Framework" description="Architecture domain for ESF">
+  <stakeholders xmi:type="architecture:Stakeholder" xmi:id="_SFcaQOGpEeewEL8Y1DXhbQ" id="org.eclipse.papyrus.esf.SafetyDesigner" name="Safety Designer" description="Tier 2 Expert within the Robotics Domain" concerns="_SqiO4OGqEeewEL8Y1DXhbQ _swjawCMYEemBcrJufC2EDw"/>
   <concerns xmi:type="architecture:Concern" xmi:id="_SqiO4OGqEeewEL8Y1DXhbQ" id="org.eclipse.papyrus.ESF-LA.concern.SafetyModeling" name="Safety modeling"/>
-  <contexts xmi:type="architecture:ArchitectureDescriptionLanguage" xmi:id="_XiGkgEMqEeeNE9tB5iN5zA" id="org.eclipse.papyrus.esf.context" name="ESF ADL" description="Extension for ESF" defaultViewpoints="_fuR0EPRYEeer9MDJI6SgXA" extensionPrefix="" creationCommandClass="org.polarsys.esf.core.diagram.esfarchitectureconcepts.command.CreateESFModelCommand">
+  <concerns xmi:type="architecture:Concern" xmi:id="_swjawCMYEemBcrJufC2EDw" id="org.eclipse.papyrus.ESF-LA.concern.UMLModeling" name="Standard UML modeling" description="Standard UML modeling"/>
+  <contexts xmi:type="architecture:ArchitectureDescriptionLanguage" xmi:id="_XiGkgEMqEeeNE9tB5iN5zA" id="org.eclipse.papyrus.esf.context" name="ESF ADL" description="Extension for ESF" defaultViewpoints="_fuR0EPRYEeer9MDJI6SgXA _5aU-sCMYEemBcrJufC2EDw" extensionPrefix="" creationCommandClass="org.polarsys.esf.core.diagram.esfarchitectureconcepts.command.CreateESFModelCommand">
     <viewpoints xmi:type="architecture:ArchitectureViewpoint" xmi:id="_fuR0EPRYEeer9MDJI6SgXA" id="org.eclipse.papyrus.ESF-LA.viewpoint.SafetyModeling" name="Safety modeling view" description="The view clusters elements that are relevant to Safety Modeling" concerns="_SqiO4OGqEeewEL8Y1DXhbQ" representationKinds="_d79eQHcZEeSndfsfQOfW2A"/>
+    <viewpoints xmi:type="architecture:ArchitectureViewpoint" xmi:id="_5aU-sCMYEemBcrJufC2EDw" id="org.eclipse.papyrus.ESF-LA.viewpoint.UMLModeling" name="Standard UML modeling" concerns="_swjawCMYEemBcrJufC2EDw">
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_zzf4gHDtEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_zzf4YHDtEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_PwD0cHDvEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_bKiwMHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_bKiwNHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_fa4kAHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_fa4kBHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_jRtroHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_ARGokHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="nattablerepresentation:PapyrusTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_Uz8agHDcEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_zzf4cXDtEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_yeY0sHDvEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_TR15IHDvEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_UzcgsHDtEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_FuMjYHDuEeWh-MssWmCB_A"/>
+      <representationKinds xmi:type="nattablerepresentation:PapyrusTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_P3J1cEb7EeRVGbM3cmVSqQ"/>
+      <representationKinds xmi:type="nattablerepresentation:PapyrusTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_P3J1cEa7EeSVGbM3cmVSqQ"/>
+      <representationKinds xmi:type="nattablerepresentation:PapyrusTable" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_WC1q0P4UEhSRsNBVzfUrzA"/>
+      <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" href="platform:/plugin/org.eclipse.papyrus.uml.architecture/model/uml.architecture#_LzyMIHDvEeWh-MssWmCB_A"/>
+    </viewpoints>
     <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/notation.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
     <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/gmfdiag-common.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
     <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.services.controlmode/model/controlmode.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
diff --git a/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/properties_view/esfarchitectureconcepts.ctx b/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/properties_view/esfarchitectureconcepts.ctx
index 806d03c..3f94f85 100644
--- a/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/properties_view/esfarchitectureconcepts.ctx
+++ b/core/diagram/org.polarsys.esf.core.diagram.esfarchitectureconcepts/src/main/resources/properties_view/esfarchitectureconcepts.ctx
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ASCII"?>
-<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_oLjZkPG9EeWFar_ZyHbXvw" name="ESFArchitectureConcepts">
+<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_oLjZkPG9EeWFar_ZyHbXvw" name="Safety concepts">
   <dependencies href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_69QJkKDJEeSZxfCXzZz3-w"/>
   <dependencies href="../../../../../org.polarsys.esf.core.common.ui/src/main/resources/properties_view/esfcore.ctx#_iOLxUPG_EeWFar_ZyHbXvw"/>
   <tabs xmi:id="_z26NcPG9EeWFar_ZyHbXvw" label="ESFArchitectureConcepts" id="esfarchitectureconcepts" priority="10">
diff --git a/core/org.polarsys.esf.core.common.ui/src/main/resources/properties_view/esfcore.ctx b/core/org.polarsys.esf.core.common.ui/src/main/resources/properties_view/esfcore.ctx
index 7406e6d..73b60dd 100644
--- a/core/org.polarsys.esf.core.common.ui/src/main/resources/properties_view/esfcore.ctx
+++ b/core/org.polarsys.esf.core.common.ui/src/main/resources/properties_view/esfcore.ctx
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="ASCII"?>
-<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_iOLxUPG_EeWFar_ZyHbXvw" name="ESFCore">
+<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_iOLxUPG_EeWFar_ZyHbXvw" name="Safety">
   <dependencies href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_69QJkKDJEeSZxfCXzZz3-w"/>
   <tabs xmi:id="_jHzg8PG_EeWFar_ZyHbXvw" label="ESFCore" id="esfcore" priority="100">
     <sections xmi:id="_jH0vEPG_EeWFar_ZyHbXvw" name="Single AbstractSArchitectureElement" sectionFile="ui/SingleAbstractSArchitectureElement.xwt">
diff --git a/core/profile/org.polarsys.esf.core.profile.esfarchitectureconcepts/src/main/resources/models/profile/esfarchitectureconcepts.profile.uml b/core/profile/org.polarsys.esf.core.profile.esfarchitectureconcepts/src/main/resources/models/profile/esfarchitectureconcepts.profile.uml
index 5c0ba21..9468cb2 100644
--- a/core/profile/org.polarsys.esf.core.profile.esfarchitectureconcepts/src/main/resources/models/profile/esfarchitectureconcepts.profile.uml
+++ b/core/profile/org.polarsys.esf.core.profile.esfarchitectureconcepts/src/main/resources/models/profile/esfarchitectureconcepts.profile.uml
@@ -1,191 +1,191 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
   <uml:Profile xmi:id="_4KUNIA3QEeWIHrhJxYOO3w" name="ESFArchitectureConcepts" metaclassReference="_jIcJ0BM2EeWOCLsnVbWZoA _jIcJ0RM2EeWOCLsnVbWZoA _oraqMBM2EeWOCLsnVbWZoA _oraqMRM2EeWOCLsnVbWZoA _f9cYABM3EeWOCLsnVbWZoA _Sg35AMXPEeWgbp76yZjh7g">
-    <ownedComment xmi:type="uml:Comment" xmi:id="_w18FgBM_EeWOCLsnVbWZoA" annotatedElement="_u6JuQRM_EeWOCLsnVbWZoA">
+    <ownedComment xmi:id="_w18FgBM_EeWOCLsnVbWZoA" annotatedElement="_u6JuQRM_EeWOCLsnVbWZoA">
       <body>ATTENTION!&#xD;
 				Must tooling for hiding the SPortRole&#xD;
 				to the users.</body>
     </ownedComment>
-    <ownedComment xmi:type="uml:Comment" xmi:id="_YqOzYBi5EeWhPZtBPxjsVg" annotatedElement="_UOb6UBi1EeWc7uebO1is2A _Y5VjMBi1EeWc7uebO1is2A">
+    <ownedComment xmi:id="_YqOzYBi5EeWhPZtBPxjsVg" annotatedElement="_UOb6UBi1EeWc7uebO1is2A _Y5VjMBi1EeWc7uebO1is2A">
       <body>Owner of SPortRole must be the same than SPart's owner</body>
     </ownedComment>
-    <ownedComment xmi:type="uml:Comment" xmi:id="_GRQmEBi7EeWhPZtBPxjsVg" annotatedElement="_TZRaoBi6EeWhPZtBPxjsVg">
+    <ownedComment xmi:id="_GRQmEBi7EeWhPZtBPxjsVg" annotatedElement="_TZRaoBi6EeWhPZtBPxjsVg">
       <body>Must manage:&#xD;
 				- INOUT ports&#xD;
 				- More than 2 ends by SCconnector
 			</body>
     </ownedComment>
-    <ownedComment xmi:type="uml:Comment" xmi:id="_ALnBABi8EeWhPZtBPxjsVg" annotatedElement="_Uy6gYBi1EeWc7uebO1is2A">
+    <ownedComment xmi:id="_ALnBABi8EeWhPZtBPxjsVg" annotatedElement="_Uy6gYBi1EeWc7uebO1is2A">
       <body>A SBlock knows all the SParts which are of its type, to know
 				wherever it is used.</body>
     </ownedComment>
-    <ownedComment xmi:type="uml:Comment" xmi:id="_AmmT4Bi8EeWhPZtBPxjsVg" annotatedElement="_UwtusBi6EeWhPZtBPxjsVg _UIuhoBi6EeWhPZtBPxjsVg">
+    <ownedComment xmi:id="_AmmT4Bi8EeWhPZtBPxjsVg" annotatedElement="_UwtusBi6EeWhPZtBPxjsVg _UIuhoBi6EeWhPZtBPxjsVg">
       <body>Must tooling!&#xD;
 				When SPort or SPart is removed, SPortRole must be removed too.</body>
     </ownedComment>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_jIcJ0BM2EeWOCLsnVbWZoA" alias="Class">
+    <elementImport xmi:id="_jIcJ0BM2EeWOCLsnVbWZoA" alias="Class">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
     </elementImport>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_jIcJ0RM2EeWOCLsnVbWZoA" alias="Property">
+    <elementImport xmi:id="_jIcJ0RM2EeWOCLsnVbWZoA" alias="Property">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
     </elementImport>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_oraqMBM2EeWOCLsnVbWZoA" alias="Port">
+    <elementImport xmi:id="_oraqMBM2EeWOCLsnVbWZoA" alias="Port">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
     </elementImport>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_oraqMRM2EeWOCLsnVbWZoA" alias="Connector">
+    <elementImport xmi:id="_oraqMRM2EeWOCLsnVbWZoA" alias="Connector">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Connector"/>
     </elementImport>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_f9cYABM3EeWOCLsnVbWZoA" alias="Package">
+    <elementImport xmi:id="_f9cYABM3EeWOCLsnVbWZoA" alias="Package">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
     </elementImport>
-    <elementImport xmi:type="uml:ElementImport" xmi:id="_Sg35AMXPEeWgbp76yZjh7g" alias="Enumeration">
+    <elementImport xmi:id="_Sg35AMXPEeWgbp76yZjh7g" alias="Enumeration">
       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Enumeration"/>
     </elementImport>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_BwcZ4A3REeWIHrhJxYOO3w" name="SPort">
-      <generalization xmi:type="uml:Generalization" xmi:id="_e5nnIBUyEeWsuO0tI_iXIw" general="_FhN_ABUzEeWsuO0tI_iXIw"/>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_DY1IABM3EeWOCLsnVbWZoA" name="base_Port" association="_DY1IARM3EeWOCLsnVbWZoA">
+      <generalization xmi:id="_e5nnIBUyEeWsuO0tI_iXIw" general="_FhN_ABUzEeWsuO0tI_iXIw"/>
+      <ownedAttribute xmi:id="_DY1IABM3EeWOCLsnVbWZoA" name="base_Port" association="_DY1IARM3EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UIuhoRi6EeWhPZtBPxjsVg" name="rolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="shared" isDerived="true" association="_UIuhoBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_UIuhoRi6EeWhPZtBPxjsVg" name="rolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="shared" isDerived="true" association="_UIuhoBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UIuhohi6EeWhPZtBPxjsVg"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UIuhoxi6EeWhPZtBPxjsVg" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_WS9W0Ri1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_WS9W0Bi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_WS9W0Ri1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_WS9W0Bi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WS9W0hi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WS9W0xi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
-      <icon xmi:type="uml:Image" xmi:id="_7v_K8PDrEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_inoutput_sport.png">
-        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7v_K8fDrEeWl5aQli56k3w" source="image_papyrus">
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7v_K8vDrEeWl5aQli56k3w" key="image_name_key" value="Icon_SPort"/>
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7v_K8_DrEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
+      <icon xmi:id="_7v_K8PDrEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_inoutput_sport.png">
+        <eAnnotations xmi:id="_7v_K8fDrEeWl5aQli56k3w" source="image_papyrus">
+          <details xmi:id="_7v_K8vDrEeWl5aQli56k3w" key="image_name_key" value="Icon_SPort"/>
+          <details xmi:id="_7v_K8_DrEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
         </eAnnotations>
       </icon>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_C4-IMA3REeWIHrhJxYOO3w" name="SConnector">
-      <generalization xmi:type="uml:Generalization" xmi:id="_pBnewJjwEeWQn9V11q-gNA">
+      <generalization xmi:id="_pBnewJjwEeWQn9V11q-gNA">
         <general xmi:type="uml:Stereotype" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_FrK08A3PEeWIHrhJxYOO3w"/>
       </generalization>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_BeF5oBM3EeWOCLsnVbWZoA" name="base_Connector" association="_BeF5oRM3EeWOCLsnVbWZoA">
+      <ownedAttribute xmi:id="_BeF5oBM3EeWOCLsnVbWZoA" name="base_Connector" association="_BeF5oRM3EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Connector"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_ZlCyoRi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_ZlCyoBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_ZlCyoRi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_ZlCyoBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZlCyohi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZlCyoxi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_TZO-YBi6EeWhPZtBPxjsVg" name="endsList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true" association="_TZRaoBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_TZO-YBi6EeWhPZtBPxjsVg" name="endsList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true" association="_TZRaoBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TZO-YRi6EeWhPZtBPxjsVg" value="2"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_TZO-Yhi6EeWhPZtBPxjsVg" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_DPHboMXOEeWgbp76yZjh7g" name="sourcesList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true">
+      <ownedAttribute xmi:id="_DPHboMXOEeWgbp76yZjh7g" name="sourcesList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_IveF0MXOEeWgbp76yZjh7g"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Ivf7AMXOEeWgbp76yZjh7g" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Me3vwMXOEeWgbp76yZjh7g" name="targetsList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true">
+      <ownedAttribute xmi:id="_Me3vwMXOEeWgbp76yZjh7g" name="targetsList" type="_FhN_ABUzEeWsuO0tI_iXIw" isDerived="true">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Me3vwcXOEeWgbp76yZjh7g"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Me3vwsXOEeWgbp76yZjh7g" value="*"/>
       </ownedAttribute>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_EqLAEA3REeWIHrhJxYOO3w" name="SModel">
-      <generalization xmi:type="uml:Generalization" xmi:id="_zTmr8JjwEeWQn9V11q-gNA">
+      <generalization xmi:id="_zTmr8JjwEeWQn9V11q-gNA">
         <general xmi:type="uml:Stereotype" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_FrK08A3PEeWIHrhJxYOO3w"/>
       </generalization>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_kJru8BM3EeWOCLsnVbWZoA" name="base_Package" association="_kJru8RM3EeWOCLsnVbWZoA">
+      <ownedAttribute xmi:id="_kJru8BM3EeWOCLsnVbWZoA" name="base_Package" association="_kJru8RM3EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_SBStUBi1EeWc7uebO1is2A" name="ownedSBlocksList" type="_IKyAEA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_SBTUYBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_SBStUBi1EeWc7uebO1is2A" name="ownedSBlocksList" type="_IKyAEA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_SBTUYBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SBStURi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SBStUhi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <icon xmi:type="uml:Image" xmi:id="_AsZlIPDtEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_smodel.png">
-        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_AsZlIfDtEeWl5aQli56k3w" source="image_papyrus">
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_AsZlIvDtEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_AsZlI_DtEeWl5aQli56k3w" key="image_name_key" value="Icon_SModel"/>
+      <icon xmi:id="_AsZlIPDtEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_smodel.png">
+        <eAnnotations xmi:id="_AsZlIfDtEeWl5aQli56k3w" source="image_papyrus">
+          <details xmi:id="_AsZlIvDtEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
+          <details xmi:id="_AsZlI_DtEeWl5aQli56k3w" key="image_name_key" value="Icon_SModel"/>
         </eAnnotations>
       </icon>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_FgN3QA3REeWIHrhJxYOO3w" name="SPortRole">
-      <generalization xmi:type="uml:Generalization" xmi:id="_fVvicBUyEeWsuO0tI_iXIw" general="_FhN_ABUzEeWsuO0tI_iXIw"/>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_u6JuQBM_EeWOCLsnVbWZoA" name="base_Port" association="_u6JuQRM_EeWOCLsnVbWZoA">
+      <generalization xmi:id="_fVvicBUyEeWsuO0tI_iXIw" general="_FhN_ABUzEeWsuO0tI_iXIw"/>
+      <ownedAttribute xmi:id="_u6JuQBM_EeWOCLsnVbWZoA" name="base_Port" association="_u6JuQRM_EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UIsscBi6EeWhPZtBPxjsVg" name="type" type="_BwcZ4A3REeWIHrhJxYOO3w" isDerived="true" association="_UIuhoBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_UIsscBi6EeWhPZtBPxjsVg" name="type" type="_BwcZ4A3REeWIHrhJxYOO3w" isDerived="true" association="_UIuhoBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UIsscRi6EeWhPZtBPxjsVg" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UIsschi6EeWhPZtBPxjsVg" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UwtusRi6EeWhPZtBPxjsVg" name="usageContext" type="_m_6nIBM1EeWOCLsnVbWZoA" isDerived="true" association="_UwtusBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_UwtusRi6EeWhPZtBPxjsVg" name="usageContext" type="_m_6nIBM1EeWOCLsnVbWZoA" isDerived="true" association="_UwtusBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Uwtushi6EeWhPZtBPxjsVg" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Uwtusxi6EeWhPZtBPxjsVg" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Y5VjMRi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_Y5VjMBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_Y5VjMRi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_Y5VjMBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Y5VjMhi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Y5VjMxi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_IKyAEA3REeWIHrhJxYOO3w" name="SBlock">
-      <generalization xmi:type="uml:Generalization" xmi:id="_Fuoc0JjxEeWQn9V11q-gNA">
+      <generalization xmi:id="_Fuoc0JjxEeWQn9V11q-gNA">
         <general xmi:type="uml:Stereotype" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_FrK08A3PEeWIHrhJxYOO3w"/>
       </generalization>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_BGIsoBM3EeWOCLsnVbWZoA" name="base_Class" association="_BGIsoRM3EeWOCLsnVbWZoA">
+      <ownedAttribute xmi:id="_BGIsoBM3EeWOCLsnVbWZoA" name="base_Class" association="_BGIsoRM3EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_9PeEMBi0EeWc7uebO1is2A" name="topBlock">
+      <ownedAttribute xmi:id="_9PeEMBi0EeWc7uebO1is2A" name="topBlock">
         <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
         <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_F7FwgBi1EeWc7uebO1is2A"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UObTQBi1EeWc7uebO1is2A" name="ownedSPartsList" type="_m_6nIBM1EeWOCLsnVbWZoA" aggregation="composite" isDerived="true" association="_UOb6UBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_UObTQBi1EeWc7uebO1is2A" name="ownedSPartsList" type="_m_6nIBM1EeWOCLsnVbWZoA" aggregation="composite" isDerived="true" association="_UOb6UBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UObTQRi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UObTQhi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Uy55UBi1EeWc7uebO1is2A" name="usagesList" type="_m_6nIBM1EeWOCLsnVbWZoA" isDerived="true" association="_Uy6gYBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_Uy55UBi1EeWc7uebO1is2A" name="usagesList" type="_m_6nIBM1EeWOCLsnVbWZoA" isDerived="true" association="_Uy6gYBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Uy55URi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Uy55Uhi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_WS8vwBi1EeWc7uebO1is2A" name="ownedSPortsList" type="_BwcZ4A3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_WS9W0Bi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_WS8vwBi1EeWc7uebO1is2A" name="ownedSPortsList" type="_BwcZ4A3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_WS9W0Bi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WS8vwRi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WS8vwhi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Y5U8IBi1EeWc7uebO1is2A" name="ownedSPortRolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_Y5VjMBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_Y5U8IBi1EeWc7uebO1is2A" name="ownedSPortRolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_Y5VjMBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Y5U8IRi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Y5U8Ihi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_ZlCLkBi1EeWc7uebO1is2A" name="sConnectorsList" type="_C4-IMA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_ZlCyoBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_ZlCLkBi1EeWc7uebO1is2A" name="sConnectorsList" type="_C4-IMA3REeWIHrhJxYOO3w" aggregation="composite" isDerived="true" association="_ZlCyoBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZlCLkRi1EeWc7uebO1is2A"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ZlCLkhi1EeWc7uebO1is2A" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_SBTUYRi1EeWc7uebO1is2A" name="sModel" type="_EqLAEA3REeWIHrhJxYOO3w" isDerived="true" association="_SBTUYBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_SBTUYRi1EeWc7uebO1is2A" name="sModel" type="_EqLAEA3REeWIHrhJxYOO3w" isDerived="true" association="_SBTUYBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_SBTUYhi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_SBTUYxi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
-      <icon xmi:type="uml:Image" xmi:id="_IIsXkPDtEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_sblock.png">
-        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_IIsXkfDtEeWl5aQli56k3w" source="image_papyrus">
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IIsXkvDtEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_IIsXk_DtEeWl5aQli56k3w" key="image_name_key" value="Icon_SBlock"/>
+      <icon xmi:id="_IIsXkPDtEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_sblock.png">
+        <eAnnotations xmi:id="_IIsXkfDtEeWl5aQli56k3w" source="image_papyrus">
+          <details xmi:id="_IIsXkvDtEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
+          <details xmi:id="_IIsXk_DtEeWl5aQli56k3w" key="image_name_key" value="Icon_SBlock"/>
         </eAnnotations>
       </icon>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_m_6nIBM1EeWOCLsnVbWZoA" name="SPart">
-      <generalization xmi:type="uml:Generalization" xmi:id="_Ab5X4JjxEeWQn9V11q-gNA">
+      <generalization xmi:id="_Ab5X4JjxEeWQn9V11q-gNA">
         <general xmi:type="uml:Stereotype" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_FrK08A3PEeWIHrhJxYOO3w"/>
       </generalization>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Cn4MMBM3EeWOCLsnVbWZoA" name="base_Property" association="_Cn4MMRM3EeWOCLsnVbWZoA">
+      <ownedAttribute xmi:id="_Cn4MMBM3EeWOCLsnVbWZoA" name="base_Property" association="_Cn4MMRM3EeWOCLsnVbWZoA">
         <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_Uy6gYRi1EeWc7uebO1is2A" name="type" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_Uy6gYBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_Uy6gYRi1EeWc7uebO1is2A" name="type" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_Uy6gYBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Uy6gYhi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Uy6gYxi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UOb6URi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_UOb6UBi1EeWc7uebO1is2A">
+      <ownedAttribute xmi:id="_UOb6URi1EeWc7uebO1is2A" name="owner" type="_IKyAEA3REeWIHrhJxYOO3w" isDerived="true" association="_UOb6UBi1EeWc7uebO1is2A">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UOb6Uhi1EeWc7uebO1is2A" value="1"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_UOb6Uxi1EeWc7uebO1is2A" value="1"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_UwsgkBi6EeWhPZtBPxjsVg" name="sPortRolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="shared" isDerived="true" association="_UwtusBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_UwsgkBi6EeWhPZtBPxjsVg" name="sPortRolesList" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="shared" isDerived="true" association="_UwtusBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_UwsgkRi6EeWhPZtBPxjsVg"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Uwsgkhi6EeWhPZtBPxjsVg" value="*"/>
       </ownedAttribute>
-      <icon xmi:type="uml:Image" xmi:id="_LFGwQPDrEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_spart.png">
-        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_LFGwQfDrEeWl5aQli56k3w" source="image_papyrus">
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LFGwQvDrEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
-          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_LFGwQ_DrEeWl5aQli56k3w" key="image_name_key" value="Icon_SPart"/>
+      <icon xmi:id="_LFGwQPDrEeWl5aQli56k3w" format="PNG" location="platform:/plugin/org.polarsys.esf.core.resources.graphical/src/main/resources/icons/profile/esfarchitectureconcepts/icon_spart.png">
+        <eAnnotations xmi:id="_LFGwQfDrEeWl5aQli56k3w" source="image_papyrus">
+          <details xmi:id="_LFGwQvDrEeWl5aQli56k3w" key="image_kind_key" value="icon"/>
+          <details xmi:id="_LFGwQ_DrEeWl5aQli56k3w" key="image_name_key" value="Icon_SPart"/>
         </eAnnotations>
       </icon>
     </packagedElement>
@@ -208,14 +208,14 @@
       <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_u6JuQhM_EeWOCLsnVbWZoA" name="extension_SPortRole" type="_FgN3QA3REeWIHrhJxYOO3w" aggregation="composite" association="_u6JuQRM_EeWOCLsnVbWZoA"/>
     </packagedElement>
     <packagedElement xmi:type="uml:Stereotype" xmi:id="_FhN_ABUzEeWsuO0tI_iXIw" name="AbstractSConnectableElement" isAbstract="true">
-      <generalization xmi:type="uml:Generalization" xmi:id="_8DfNMJjwEeWQn9V11q-gNA">
+      <generalization xmi:id="_8DfNMJjwEeWQn9V11q-gNA">
         <general xmi:type="uml:Stereotype" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_FrK08A3PEeWIHrhJxYOO3w"/>
       </generalization>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_TZRaoRi6EeWhPZtBPxjsVg" name="sConnectorsList" type="_C4-IMA3REeWIHrhJxYOO3w" isDerived="true" association="_TZRaoBi6EeWhPZtBPxjsVg">
+      <ownedAttribute xmi:id="_TZRaoRi6EeWhPZtBPxjsVg" name="sConnectorsList" type="_C4-IMA3REeWIHrhJxYOO3w" isDerived="true" association="_TZRaoBi6EeWhPZtBPxjsVg">
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_TZRaohi6EeWhPZtBPxjsVg"/>
         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_TZRaoxi6EeWhPZtBPxjsVg" value="*"/>
       </ownedAttribute>
-      <ownedAttribute xmi:type="uml:Property" xmi:id="_t3mZgMkEEeWJK6fhTpTGAQ" name="sDirection" visibility="public" type="_sfK48MXNEeWgbp76yZjh7g">
+      <ownedAttribute xmi:id="_t3mZgMkEEeWJK6fhTpTGAQ" name="sDirection" visibility="public" type="_sfK48MXNEeWgbp76yZjh7g">
         <defaultValue xmi:type="uml:InstanceValue" xmi:id="_qpxXQPDzEeWl5aQli56k3w" name="INOUT" type="_sfK48MXNEeWgbp76yZjh7g" instance="_sfK488XNEeWgbp76yZjh7g"/>
       </ownedAttribute>
     </packagedElement>
@@ -232,15 +232,15 @@
       <supplier xmi:type="uml:Profile" href="platform:/plugin/org.polarsys.esf.core.profile.esfcore/src/main/resources/models/profile/esfcore.profile.uml#_5CO-gA3OEeWIHrhJxYOO3w"/>
     </packagedElement>
     <packagedElement xmi:type="uml:Enumeration" xmi:id="_sfK48MXNEeWgbp76yZjh7g" name="SDirection">
-      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_sfK48cXNEeWgbp76yZjh7g" name="IN"/>
-      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_sfK48sXNEeWgbp76yZjh7g" name="OUT"/>
-      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_sfK488XNEeWgbp76yZjh7g" name="INOUT"/>
+      <ownedLiteral xmi:id="_sfK48cXNEeWgbp76yZjh7g" name="IN"/>
+      <ownedLiteral xmi:id="_sfK48sXNEeWgbp76yZjh7g" name="OUT"/>
+      <ownedLiteral xmi:id="_sfK488XNEeWgbp76yZjh7g" name="INOUT"/>
     </packagedElement>
-    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_2x7ekCx0EeW1r-I29laTnw">
-      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2x8ssCx0EeW1r-I29laTnw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+    <profileApplication xmi:id="_2x7ekCx0EeW1r-I29laTnw">
+      <eAnnotations xmi:id="_2x8ssCx0EeW1r-I29laTnw" source="http://www.eclipse.org/uml2/2.0.0/UML">
         <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
       </eAnnotations>
-      <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
+      <appliedProfile href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
     </profileApplication>
   </uml:Profile>
   <Ecore:EPackage xmi:id="_40S-8Cx0EeW1r-I29laTnw" base_Package="_4KUNIA3QEeWIHrhJxYOO3w" packageName="esfarchitectureconcepts" nsPrefix="ESFArchitectureConcepts" nsURI="http://www.polarsys.org/esf/0.7.0/ESFArchitectureConcepts" basePackage="org.polarsys.esf" prefix="ESFArchitectureConcepts"/>
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/META-INF/MANIFEST.MF b/core/profile/org.polarsys.esf.core.profile.esfcore/META-INF/MANIFEST.MF
index c848ec8..bff6553 100644
--- a/core/profile/org.polarsys.esf.core.profile.esfcore/META-INF/MANIFEST.MF
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/META-INF/MANIFEST.MF
@@ -15,7 +15,8 @@
  org.eclipse.emf.ecore.xmi;bundle-version="2.11.1";visibility:=reexport,
  org.junit;visibility:=reexport
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
-Export-Package: org.polarsys.esf.esfcore,
+Export-Package: org.polarsys.esf.core.profile.esfcore,
+ org.polarsys.esf.esfcore,
  org.polarsys.esf.esfcore.impl,
  org.polarsys.esf.esfcore.util
 Bundle-ActivationPolicy: lazy
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/plugin.xml b/core/profile/org.polarsys.esf.core.profile.esfcore/plugin.xml
index ceeb0f6..f6dcb53 100644
--- a/core/profile/org.polarsys.esf.core.profile.esfcore/plugin.xml
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/plugin.xml
@@ -5,6 +5,7 @@
 -->
 
 <plugin>
+   <extension-point id="customuuid" name="Custom UUID" schema="schema/customuuid.exsd"/>
 
    <extension point="org.eclipse.emf.ecore.generated_package">
       <!-- @generated esfcore -->
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/schema/customuuid.exsd b/core/profile/org.polarsys.esf.core.profile.esfcore/schema/customuuid.exsd
new file mode 100644
index 0000000..fe192a2
--- /dev/null
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/schema/customuuid.exsd
@@ -0,0 +1,102 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.polarsys.esf.core.profile.esfcore" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+      <appInfo>
+         <meta.schema plugin="org.polarsys.esf.core.profile.esfcore" id="customuuid" name="Custom UUID"/>
+      </appInfo>
+      <documentation>
+         [Enter description of this extension point.]
+      </documentation>
+   </annotation>
+
+   <element name="extension">
+      <annotation>
+         <appInfo>
+            <meta.element />
+         </appInfo>
+      </annotation>
+      <complexType>
+         <choice minOccurs="0" maxOccurs="unbounded">
+            <element ref="customuuid"/>
+         </choice>
+         <attribute name="point" type="string" use="required">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="id" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+            </annotation>
+         </attribute>
+         <attribute name="name" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appInfo>
+                  <meta.attribute translatable="true"/>
+               </appInfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <element name="customuuid">
+      <complexType>
+         <attribute name="class" type="string">
+            <annotation>
+               <documentation>
+                  
+               </documentation>
+               <appInfo>
+                  <meta.attribute kind="java" basedOn=":org.polarsys.esf.core.profile.esfcore.ICustomUUID"/>
+               </appInfo>
+            </annotation>
+         </attribute>
+      </complexType>
+   </element>
+
+   <annotation>
+      <appInfo>
+         <meta.section type="since"/>
+      </appInfo>
+      <documentation>
+         [Enter the first release in which this extension point appears.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appInfo>
+         <meta.section type="examples"/>
+      </appInfo>
+      <documentation>
+         [Enter extension point usage example here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appInfo>
+         <meta.section type="apiinfo"/>
+      </appInfo>
+      <documentation>
+         [Enter API information here.]
+      </documentation>
+   </annotation>
+
+   <annotation>
+      <appInfo>
+         <meta.section type="implementation"/>
+      </appInfo>
+      <documentation>
+         [Enter information about supplied implementation of this extension point.]
+      </documentation>
+   </annotation>
+
+
+</schema>
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/CustomUUID.java b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/CustomUUID.java
new file mode 100644
index 0000000..67c9eea
--- /dev/null
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/CustomUUID.java
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2016 ALL4TEC & 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:
+ *     ALL4TEC & CEA LIST - initial API and implementation
+ ******************************************************************************/
+
+package org.polarsys.esf.core.profile.esfcore;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * Handle UUIDs based on extension points
+ */
+public class CustomUUID {
+
+	private static final String CLASS = "class"; //$NON-NLS-1$
+
+	public static final String ICUSTOM_UUID_ID = ESFCoreActivator.PLUGIN_ID + ".customuuid"; //$NON-NLS-1$
+	
+	public static String getUUID(Element element) {
+		ICustomUUID customUUIDintf = getCustomUUIDIntf(element);
+		if (customUUIDintf != null) {
+			return customUUIDintf.getUUID(element);
+		}
+		return null;
+	}
+
+	public static boolean showUUID(Element element) {
+		ICustomUUID customUUIDintf = getCustomUUIDIntf(element);
+		if (customUUIDintf != null) {
+			return customUUIDintf.showUUID(element);
+		}
+		// show (ESF) UUID by default
+		return true;
+	}
+
+	/**
+	 * Retrieve a direction from a port. The first extension returning a
+	 * defined value (in, out, inout) is returned
+	 * 
+	 * @param port a UML port for which the direction should be determined
+	 * @return the direction of the passed port
+	 */
+	public static ICustomUUID getCustomUUIDIntf(Element element) {
+		IExtensionRegistry reg = Platform.getExtensionRegistry();
+		IConfigurationElement[] configElements = reg.getConfigurationElementsFor(ICUSTOM_UUID_ID);
+
+		for (IConfigurationElement configElement : configElements) {
+			try {
+				final Object obj = configElement.createExecutableExtension(CLASS);
+				if (obj instanceof ICustomUUID) {
+					ICustomUUID customUUID = (ICustomUUID) obj;
+					if (customUUID.getUUID(element) != null) {
+						return customUUID;
+					}
+				}
+			} catch (CoreException exception) {
+				exception.printStackTrace();
+			}
+		}
+		return null;
+	}
+	
+	
+}
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ESFCoreActivator.java b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ESFCoreActivator.java
index b0106d3..0c704d4 100644
--- a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ESFCoreActivator.java
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ESFCoreActivator.java
@@ -28,7 +28,10 @@
     extends EMFPlugin
     implements BundleActivator {
 
-    /** Keep track of the encapsulating singleton. */
+	// The plug-in ID
+	public static final String PLUGIN_ID = "org.polarsys.esf.core.profile.esfcore"; //$NON-NLS-1$
+
+	/** Keep track of the encapsulating singleton. */
     public static final ESFCoreActivator INSTANCE = new ESFCoreActivator();
 
     /** Execution context for the bundle. */
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ICustomUUID.java b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ICustomUUID.java
new file mode 100644
index 0000000..351bc9e
--- /dev/null
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/core/profile/esfcore/ICustomUUID.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2016 ALL4TEC & 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:
+ *     ALL4TEC & CEA LIST - initial API and implementation
+ ******************************************************************************/
+
+package org.polarsys.esf.core.profile.esfcore;
+
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * Enable customization of UUIDs
+ */
+public interface ICustomUUID {
+	/**
+	 * @param element
+	 *            a UML element
+	 * @return true, if ESF should show the calculated UUID (which might be
+	 *         specialized by the extension, see below)
+	 */
+	boolean showUUID(Element element);
+
+	/**
+	 * @param element
+	 *            a UML element
+	 * @return the UUID that is calculated by the extension. A null value implies
+	 *         that the customization/extension could not calculate an UUID from
+	 *         the passed element
+	 */
+	String getUUID(Element element);
+}
diff --git a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/esfcore/impl/GenericAbstractSElement.java b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/esfcore/impl/GenericAbstractSElement.java
index b6f1677..213d7ba 100644
--- a/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/esfcore/impl/GenericAbstractSElement.java
+++ b/core/profile/org.polarsys.esf.core.profile.esfcore/src/main/java/org/polarsys/esf/esfcore/impl/GenericAbstractSElement.java
@@ -14,6 +14,7 @@
 
 import org.eclipse.emf.ecore.xmi.XMIResource;
 import org.eclipse.uml2.uml.NamedElement;
+import org.polarsys.esf.core.profile.esfcore.CustomUUID;
 
 /**
  * This class implements the derived attributes of the generated class {@link AbstractSElement}.
@@ -53,7 +54,13 @@
         String vUUID = "";
         // Get UUID from UML element
         if (pElement != null) {
-            vUUID = ((XMIResource) pElement.eResource()).getID(pElement);
+        	String customID = CustomUUID.getUUID(pElement);
+        	if (customID != null) {
+        		vUUID = customID;
+        	}
+        	else {
+        		vUUID = ((XMIResource) pElement.eResource()).getID(pElement);
+        	}
         }
         return vUUID;
     }