Extension of the profile to deal with data at instance level

Change-Id: I8e47ba96d604d905eb6290c87d5072892d1c5aa5
Signed-off-by: Arnaud Cuccuru <arnaud.cuccuru@cea.fr>
diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.genmodel b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.genmodel
index 7464bee..0b63559 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.genmodel
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.genmodel
@@ -45,6 +45,8 @@
           propertySortChoices="true" ecoreFeature="ecore:EReference profile.ecore#//ValueSeries/base_Property"/>

       <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"

           propertySortChoices="true" ecoreFeature="ecore:EReference profile.ecore#//ValueSeries/dependent"/>

+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"

+          propertySortChoices="true" ecoreFeature="ecore:EReference profile.ecore#//ValueSeries/base_Slot"/>

       <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="profile.ecore#//ValueSeries/getSize"/>

       <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="profile.ecore#//ValueSeries/getStringValue">

         <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="profile.ecore#//ValueSeries/getStringValue/index"/>

@@ -62,5 +64,11 @@
     <genClasses xsi:type="genmodel:GenClass" ecoreClass="profile.ecore#//BooleanSeries">

       <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute profile.ecore#//BooleanSeries/values"/>

     </genClasses>

+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="profile.ecore#//DataSourceInstance">

+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"

+          propertySortChoices="true" ecoreFeature="ecore:EReference profile.ecore#//DataSourceInstance/base_InstanceSpecification"/>

+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"

+          propertySortChoices="true" ecoreFeature="ecore:EReference profile.ecore#//DataSourceInstance/series"/>

+    </genClasses>

   </genPackages>

 </genmodel:GenModel>

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.notation b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.notation
index c2f3095..783f8bf 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.notation
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.notation
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>

-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_P-pCoACwEeaEKO7reSX3-A" type="PapyrusUMLProfileDiagram" name="Profile Diagram" measurementUnit="Pixel">

+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_P-pCoACwEeaEKO7reSX3-A" type="PapyrusUMLProfileDiagram" name="Profile Diagram" measurementUnit="Pixel">

   <children xmi:type="notation:Shape" xmi:id="_Z_Pk4ACwEeaEKO7reSX3-A" type="Class_MetaclassShape">

     <children xmi:type="notation:DecorationNode" xmi:id="_Z_eOYACwEeaEKO7reSX3-A" type="Class_MetaclassNameLabel"/>

     <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>

@@ -144,6 +144,63 @@
     <element xmi:type="uml:Stereotype" href="datavisualization.profile.uml#_v5lfsAI5EeaiiIMyke7TZw"/>

     <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LaUeIU5oEeaBSuyKghFLmw" x="897" y="813"/>

   </children>

+  <children xmi:type="notation:Shape" xmi:id="_oasY8M9pEeefb8sanY33oQ" type="Class_MetaclassShape">

+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oa1i4s9pEeefb8sanY33oQ" source="Stereotype_Annotation">

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oa1i489pEeefb8sanY33oQ" key="StereotypeWithQualifiedNameList" value=""/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oa1i5M9pEeefb8sanY33oQ" key="StereotypeList" value="StandardProfile::Metaclass"/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oa1i5c9pEeefb8sanY33oQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oa1i5s9pEeefb8sanY33oQ" key="PropStereoDisplay" value=""/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oa1i589pEeefb8sanY33oQ" key="StereotypePropertyLocation" value="Compartment"/>

+    </eAnnotations>

+    <children xmi:type="notation:DecorationNode" xmi:id="_oa1i4M9pEeefb8sanY33oQ" type="Class_MetaclassNameLabel"/>

+    <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#InstanceSpecification"/>

+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oa1i4c9pEeefb8sanY33oQ" x="881" y="125"/>

+  </children>

+  <children xmi:type="notation:Shape" xmi:id="_obb_089pEeefb8sanY33oQ" type="StereotypeComment">

+    <styles xmi:type="notation:TitleStyle" xmi:id="_obb_1M9pEeefb8sanY33oQ"/>

+    <styles xmi:type="notation:EObjectValueStyle" xmi:id="_obb_1s9pEeefb8sanY33oQ" name="BASE_ELEMENT">

+      <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#InstanceSpecification"/>

+    </styles>

+    <element xsi:nil="true"/>

+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_obb_1c9pEeefb8sanY33oQ" x="1082" y="192"/>

+  </children>

+  <children xmi:type="notation:Shape" xmi:id="_YZQqwM9rEeefb8sanY33oQ" type="Stereotype_Shape">

+    <children xmi:type="notation:DecorationNode" xmi:id="_YZQqws9rEeefb8sanY33oQ" type="Stereotype_NameLabel"/>

+    <children xmi:type="notation:BasicCompartment" xmi:id="_YZQqw89rEeefb8sanY33oQ" type="Stereotype_AttributeCompartment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_YZQqxM9rEeefb8sanY33oQ"/>

+      <styles xmi:type="notation:SortingStyle" xmi:id="_YZQqxc9rEeefb8sanY33oQ"/>

+      <styles xmi:type="notation:FilteringStyle" xmi:id="_YZQqxs9rEeefb8sanY33oQ"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YZQqx89rEeefb8sanY33oQ"/>

+    </children>

+    <children xmi:type="notation:BasicCompartment" xmi:id="_YZZ0sM9rEeefb8sanY33oQ" type="Stereotype_OperationCompartment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_YZZ0sc9rEeefb8sanY33oQ"/>

+      <styles xmi:type="notation:SortingStyle" xmi:id="_YZZ0ss9rEeefb8sanY33oQ"/>

+      <styles xmi:type="notation:FilteringStyle" xmi:id="_YZZ0s89rEeefb8sanY33oQ"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YZZ0tM9rEeefb8sanY33oQ"/>

+    </children>

+    <element xmi:type="uml:Stereotype" href="datavisualization.profile.uml#_YY9IwM9rEeefb8sanY33oQ"/>

+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YZQqwc9rEeefb8sanY33oQ" x="885" y="225"/>

+  </children>

+  <children xmi:type="notation:Shape" xmi:id="_uUqyIc9rEeefb8sanY33oQ" type="Class_MetaclassShape">

+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uUqyJc9rEeefb8sanY33oQ" source="Stereotype_Annotation">

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uUqyJs9rEeefb8sanY33oQ" key="StereotypeWithQualifiedNameList" value=""/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uUqyJ89rEeefb8sanY33oQ" key="StereotypeList" value="StandardProfile::Metaclass"/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uUqyKM9rEeefb8sanY33oQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uUqyKc9rEeefb8sanY33oQ" key="PropStereoDisplay" value=""/>

+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uUqyKs9rEeefb8sanY33oQ" key="StereotypePropertyLocation" value="Compartment"/>

+    </eAnnotations>

+    <children xmi:type="notation:DecorationNode" xmi:id="_uUqyI89rEeefb8sanY33oQ" type="Class_MetaclassNameLabel"/>

+    <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Slot"/>

+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uUqyJM9rEeefb8sanY33oQ" x="593" y="468"/>

+  </children>

+  <children xmi:type="notation:Shape" xmi:id="_uU9tE89rEeefb8sanY33oQ" type="StereotypeComment">

+    <styles xmi:type="notation:TitleStyle" xmi:id="_uU9tFM9rEeefb8sanY33oQ"/>

+    <styles xmi:type="notation:EObjectValueStyle" xmi:id="_uU9tFs9rEeefb8sanY33oQ" name="BASE_ELEMENT">

+      <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Slot"/>

+    </styles>

+    <element xsi:nil="true"/>

+    <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uU9tFc9rEeefb8sanY33oQ" x="793" y="468"/>

+  </children>

   <styles xmi:type="notation:StringValueStyle" xmi:id="_P-pCoQCwEeaEKO7reSX3-A" name="diagram_compatibility_version" stringValue="1.2.0"/>

   <styles xmi:type="notation:DiagramStyle" xmi:id="_P-pCogCwEeaEKO7reSX3-A"/>

   <styles xmi:type="style:PapyrusViewStyle" xmi:id="_P-pCowCwEeaEKO7reSX3-A">

@@ -230,7 +287,7 @@
     </children>

     <children xmi:type="notation:DecorationNode" xmi:id="_2qKEJU2yEeapTv22SxkS-w" type="Association_SourceRoleLabel">

       <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3GEkEE2yEeapTv22SxkS-w" name="IS_UPDATED_POSITION" booleanValue="true"/>

-      <layoutConstraint xmi:type="notation:Location" xmi:id="_2qKEJk2yEeapTv22SxkS-w" x="32" y="-99"/>

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_2qKEJk2yEeapTv22SxkS-w" x="54" y="45"/>

     </children>

     <children xmi:type="notation:DecorationNode" xmi:id="_2qKEJ02yEeapTv22SxkS-w" type="Association_SourceMultiplicityLabel">

       <styles xmi:type="notation:BooleanValueStyle" xmi:id="_3GXfAE2yEeapTv22SxkS-w" name="IS_UPDATED_POSITION" booleanValue="true"/>

@@ -290,4 +347,63 @@
     <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_L5GE0E5oEeaBSuyKghFLmw" id="(0.4594594594594595,0.0)"/>

     <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_L5Gr4E5oEeaBSuyKghFLmw" id="(0.53,1.0)"/>

   </edges>

+  <edges xmi:type="notation:Connector" xmi:id="_oblJwM9pEeefb8sanY33oQ" type="StereotypeCommentLink" source="_oasY8M9pEeefb8sanY33oQ" target="_obb_089pEeefb8sanY33oQ">

+    <styles xmi:type="notation:FontStyle" xmi:id="_oblJwc9pEeefb8sanY33oQ"/>

+    <styles xmi:type="notation:EObjectValueStyle" xmi:id="_oblJxc9pEeefb8sanY33oQ" name="BASE_ELEMENT">

+      <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#InstanceSpecification"/>

+    </styles>

+    <element xsi:nil="true"/>

+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_oblJws9pEeefb8sanY33oQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+    <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oblJw89pEeefb8sanY33oQ"/>

+    <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_oblJxM9pEeefb8sanY33oQ"/>

+  </edges>

+  <edges xmi:type="notation:Connector" xmi:id="_aCvKAM9rEeefb8sanY33oQ" type="Extension_Edge" source="_YZQqwM9rEeefb8sanY33oQ" target="_oasY8M9pEeefb8sanY33oQ">

+    <styles xmi:type="notation:FontStyle" xmi:id="_aCvKAc9rEeefb8sanY33oQ"/>

+    <element xmi:type="uml:Extension" href="datavisualization.profile.uml#_aCJUIM9rEeefb8sanY33oQ"/>

+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aCvKAs9rEeefb8sanY33oQ" points="[945, 287, -643984, -643984]$[944, 242, -643984, -643984]"/>

+    <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aDszUM9rEeefb8sanY33oQ" id="(0.45112781954887216,0.0)"/>

+    <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aDszUc9rEeefb8sanY33oQ" id="(0.43356643356643354,1.0)"/>

+  </edges>

+  <edges xmi:type="notation:Connector" xmi:id="_uU9tF89rEeefb8sanY33oQ" type="StereotypeCommentLink" source="_uUqyIc9rEeefb8sanY33oQ" target="_uU9tE89rEeefb8sanY33oQ">

+    <styles xmi:type="notation:FontStyle" xmi:id="_uU9tGM9rEeefb8sanY33oQ"/>

+    <styles xmi:type="notation:EObjectValueStyle" xmi:id="_uU9tHM9rEeefb8sanY33oQ" name="BASE_ELEMENT">

+      <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Slot"/>

+    </styles>

+    <element xsi:nil="true"/>

+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_uU9tGc9rEeefb8sanY33oQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+    <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uU9tGs9rEeefb8sanY33oQ"/>

+    <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uU9tG89rEeefb8sanY33oQ"/>

+  </edges>

+  <edges xmi:type="notation:Connector" xmi:id="_u_OyEM9rEeefb8sanY33oQ" type="Extension_Edge" source="_jE6i4E2yEeapTv22SxkS-w" target="_uUqyIc9rEeefb8sanY33oQ">

+    <styles xmi:type="notation:FontStyle" xmi:id="_u_OyEc9rEeefb8sanY33oQ"/>

+    <element xmi:type="uml:Extension" href="datavisualization.profile.uml#_u-fLMM9rEeefb8sanY33oQ"/>

+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_u_OyEs9rEeefb8sanY33oQ" points="[871, 522, -643984, -643984]$[693, 498, -643984, -643984]"/>

+    <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_u_-Y8M9rEeefb8sanY33oQ" id="(0.0,0.20754716981132076)"/>

+    <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_u_-Y8c9rEeefb8sanY33oQ" id="(1.0,0.6)"/>

+  </edges>

+  <edges xmi:type="notation:Connector" xmi:id="_xOpP8M9rEeefb8sanY33oQ" type="Association_Edge" source="_YZQqwM9rEeefb8sanY33oQ" target="_jE6i4E2yEeapTv22SxkS-w">

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP889rEeefb8sanY33oQ" type="Association_StereotypeLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP9M9rEeefb8sanY33oQ" y="-20"/>

+    </children>

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP9c9rEeefb8sanY33oQ" type="Association_NameLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP9s9rEeefb8sanY33oQ" y="20"/>

+    </children>

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP989rEeefb8sanY33oQ" type="Association_TargetRoleLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP-M9rEeefb8sanY33oQ" y="-20"/>

+    </children>

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP-c9rEeefb8sanY33oQ" type="Association_SourceRoleLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP-s9rEeefb8sanY33oQ" y="20"/>

+    </children>

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP-89rEeefb8sanY33oQ" type="Association_SourceMultiplicityLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP_M9rEeefb8sanY33oQ" y="20"/>

+    </children>

+    <children xmi:type="notation:DecorationNode" xmi:id="_xOpP_c9rEeefb8sanY33oQ" type="Association_TargetMultiplicityLabel">

+      <layoutConstraint xmi:type="notation:Location" xmi:id="_xOpP_s9rEeefb8sanY33oQ" y="-20"/>

+    </children>

+    <styles xmi:type="notation:FontStyle" xmi:id="_xOpP8c9rEeefb8sanY33oQ"/>

+    <element xmi:type="uml:Association" href="datavisualization.profile.uml#_xN5pEM9rEeefb8sanY33oQ"/>

+    <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xOpP8s9rEeefb8sanY33oQ" points="[923, 331, -643984, -643984]$[911, 500, -643984, -643984]"/>

+    <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xPrxwM9rEeefb8sanY33oQ" id="(0.2857142857142857,1.0)"/>

+    <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xPrxwc9rEeefb8sanY33oQ" id="(0.4,0.0)"/>

+  </edges>

 </notation:Diagram>

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.uml b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.uml
index db6f789..8df2951 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.uml
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/datavisualization.profile.uml
@@ -1,7 +1,197 @@
 <?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="_P7FYUACwEeaEKO7reSX3-A" name="DataVisualizationProfile" metaclassReference="_Z-8p8ACwEeaEKO7reSX3-A _Z--fIACwEeaEKO7reSX3-A _-ajFMAItEeaiiIMyke7TZw">

+  <uml:Profile xmi:id="_P7FYUACwEeaEKO7reSX3-A" name="DataVisualizationProfile" metaclassReference="_Z-8p8ACwEeaEKO7reSX3-A _Z--fIACwEeaEKO7reSX3-A _-ajFMAItEeaiiIMyke7TZw _uUqyIM9rEeefb8sanY33oQ">

     <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ouXu8AC0EeaEKO7reSX3-A" source="http://www.eclipse.org/uml2/2.0.0/UML">

+      <contents xmi:type="ecore:EPackage" xmi:id="_5VTOAc9rEeefb8sanY33oQ" name="profile" nsURI="https://www.eclipse.org/papyrus/datavisualization/1.0.0" nsPrefix="visualization">

+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOAs9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML">

+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5VTOA89rEeefb8sanY33oQ" key="originalName" value="DataVisualizationProfile"/>

+        </eAnnotations>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOBM9rEeefb8sanY33oQ" name="DataSource">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOBc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Ow1-MAIuEeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOBs9rEeefb8sanY33oQ" name="base_DataType" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//DataType"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOCM9rEeefb8sanY33oQ" name="series" ordered="false" upperBound="-1" eType="_5VTOCs9rEeefb8sanY33oQ" changeable="false" derived="true"/>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOCs9rEeefb8sanY33oQ" name="ValueSeries">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOC89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_jEzOIE2yEeapTv22SxkS-w"/>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_5VTODM9rEeefb8sanY33oQ" name="getSize" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eOperations>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_5VTODs9rEeefb8sanY33oQ" name="getStringValue" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+            <eParameters xmi:type="ecore:EParameter" xmi:id="_5VTOEM9rEeefb8sanY33oQ" name="index" ordered="false" lowerBound="1">

+              <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+            </eParameters>

+          </eOperations>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_5VTOEs9rEeefb8sanY33oQ" name="binaryString" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOFM9rEeefb8sanY33oQ" name="base_Property" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOFs9rEeefb8sanY33oQ" name="dependent" ordered="false" eType="_5VTOCs9rEeefb8sanY33oQ"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOGM9rEeefb8sanY33oQ" name="base_Slot" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Slot"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOGs9rEeefb8sanY33oQ" name="StringSeries" eSuperTypes="_5VTOCs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOG89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_vDQUoAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_5VTOHM9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOH89rEeefb8sanY33oQ" name="DoubleSeries" eSuperTypes="_5VTOCs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOIM9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_v5lfsAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_5VTOIc9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOJM9rEeefb8sanY33oQ" name="IntegerSeries" eSuperTypes="_5VTOCs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOJc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wS5-oAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_5VTOJs9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOKc9rEeefb8sanY33oQ" name="BooleanSeries" eSuperTypes="_5VTOCs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOKs9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wn4wIAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_5VTOK89rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_5VTOLs9rEeefb8sanY33oQ" name="DataSourceInstance">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5VTOL89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_YY9IwM9rEeefb8sanY33oQ"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOMM9rEeefb8sanY33oQ" name="base_InstanceSpecification" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//InstanceSpecification"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_5VTOMs9rEeefb8sanY33oQ" name="series" ordered="false" upperBound="-1" eType="_5VTOCs9rEeefb8sanY33oQ" derived="true"/>

+        </eClassifiers>

+      </contents>

+      <contents xmi:type="ecore:EPackage" xmi:id="_vxXZoc9rEeefb8sanY33oQ" name="profile" nsURI="https://www.eclipse.org/papyrus/datavisualization/1.0.0" nsPrefix="visualization">

+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZos9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML">

+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vxXZo89rEeefb8sanY33oQ" key="originalName" value="DataVisualizationProfile"/>

+        </eAnnotations>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZpM9rEeefb8sanY33oQ" name="DataSource">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZpc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Ow1-MAIuEeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZps9rEeefb8sanY33oQ" name="base_DataType" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//DataType"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZqM9rEeefb8sanY33oQ" name="series" ordered="false" upperBound="-1" eType="_vxXZqs9rEeefb8sanY33oQ" changeable="false" derived="true"/>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZqs9rEeefb8sanY33oQ" name="ValueSeries">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZq89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_jEzOIE2yEeapTv22SxkS-w"/>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_vxXZrM9rEeefb8sanY33oQ" name="getSize" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eOperations>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_vxXZrs9rEeefb8sanY33oQ" name="getStringValue" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+            <eParameters xmi:type="ecore:EParameter" xmi:id="_vxXZsM9rEeefb8sanY33oQ" name="index" ordered="false" lowerBound="1">

+              <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+            </eParameters>

+          </eOperations>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_vxXZss9rEeefb8sanY33oQ" name="binaryString" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZtM9rEeefb8sanY33oQ" name="base_Property" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZts9rEeefb8sanY33oQ" name="dependent" ordered="false" eType="_vxXZqs9rEeefb8sanY33oQ"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZuM9rEeefb8sanY33oQ" name="base_Slot" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Slot"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZus9rEeefb8sanY33oQ" name="StringSeries" eSuperTypes="_vxXZqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZu89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_vDQUoAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_vxXZvM9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZv89rEeefb8sanY33oQ" name="DoubleSeries" eSuperTypes="_vxXZqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZwM9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_v5lfsAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_vxXZwc9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZxM9rEeefb8sanY33oQ" name="IntegerSeries" eSuperTypes="_vxXZqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZxc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wS5-oAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_vxXZxs9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZyc9rEeefb8sanY33oQ" name="BooleanSeries" eSuperTypes="_vxXZqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZys9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wn4wIAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_vxXZy89rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_vxXZzs9rEeefb8sanY33oQ" name="DataSourceInstance">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vxXZz89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_YY9IwM9rEeefb8sanY33oQ"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_vxXZ0M9rEeefb8sanY33oQ" name="base_InstanceSpecification" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//InstanceSpecification"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+      </contents>

+      <contents xmi:type="ecore:EPackage" xmi:id="_d3Ryoc9rEeefb8sanY33oQ" name="profile" nsURI="https://www.eclipse.org/papyrus/datavisualization/1.0.0" nsPrefix="visualization">

+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryos9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML">

+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_d3Ryo89rEeefb8sanY33oQ" key="originalName" value="DataVisualizationProfile"/>

+        </eAnnotations>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3RypM9rEeefb8sanY33oQ" name="DataSource">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Rypc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Ow1-MAIuEeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_d3Ryps9rEeefb8sanY33oQ" name="base_DataType" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//DataType"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_d3RyqM9rEeefb8sanY33oQ" name="series" ordered="false" upperBound="-1" eType="_d3Ryqs9rEeefb8sanY33oQ" changeable="false" derived="true"/>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3Ryqs9rEeefb8sanY33oQ" name="ValueSeries">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryq89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_jEzOIE2yEeapTv22SxkS-w"/>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_d3RyrM9rEeefb8sanY33oQ" name="getSize" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eOperations>

+          <eOperations xmi:type="ecore:EOperation" xmi:id="_d3Ryrs9rEeefb8sanY33oQ" name="getStringValue" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+            <eParameters xmi:type="ecore:EParameter" xmi:id="_d3RysM9rEeefb8sanY33oQ" name="index" ordered="false" lowerBound="1">

+              <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+            </eParameters>

+          </eOperations>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_d3Ryss9rEeefb8sanY33oQ" name="binaryString" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_d3RytM9rEeefb8sanY33oQ" name="base_Property" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>

+          </eStructuralFeatures>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_d3Ryts9rEeefb8sanY33oQ" name="dependent" ordered="false" eType="_d3Ryqs9rEeefb8sanY33oQ"/>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3RyuM9rEeefb8sanY33oQ" name="StringSeries" eSuperTypes="_d3Ryqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryuc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_vDQUoAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_d3Ryus9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3Ryvc9rEeefb8sanY33oQ" name="DoubleSeries" eSuperTypes="_d3Ryqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryvs9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_v5lfsAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_d3Ryv89rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3Ryws9rEeefb8sanY33oQ" name="IntegerSeries" eSuperTypes="_d3Ryqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryw89rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wS5-oAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_d3RyxM9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3Ryx89rEeefb8sanY33oQ" name="BooleanSeries" eSuperTypes="_d3Ryqs9rEeefb8sanY33oQ">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3RyyM9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wn4wIAI5EeaiiIMyke7TZw"/>

+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_d3Ryyc9rEeefb8sanY33oQ" name="values" unique="false" upperBound="-1" transient="true">

+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_d3RyzM9rEeefb8sanY33oQ" name="DataSourceInstance">

+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d3Ryzc9rEeefb8sanY33oQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_YY9IwM9rEeefb8sanY33oQ"/>

+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_d3Ryzs9rEeefb8sanY33oQ" name="base_InstanceSpecification" ordered="false" lowerBound="1">

+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//InstanceSpecification"/>

+          </eStructuralFeatures>

+        </eClassifiers>

+      </contents>

       <contents xmi:type="ecore:EPackage" xmi:id="_i1zZ0AYqEea37IpNp9toNQ" name="profile" nsURI="https://www.eclipse.org/papyrus/datavisualization/1.0.0" nsPrefix="visualization">

         <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_i1zZ0QYqEea37IpNp9toNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">

           <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_i1zZ0gYqEea37IpNp9toNQ" key="originalName" value="DataVisualizationProfile"/>

@@ -953,6 +1143,9 @@
     <elementImport xmi:type="uml:ElementImport" xmi:id="_-ajFMAItEeaiiIMyke7TZw" alias="Property">

       <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>

     </elementImport>

+    <elementImport xmi:type="uml:ElementImport" xmi:id="_uUqyIM9rEeefb8sanY33oQ" alias="Slot">

+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Slot"/>

+    </elementImport>

     <packageImport xmi:type="uml:PackageImport" xmi:id="_QNG8cACwEeaEKO7reSX3-A">

       <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>

     </packageImport>

@@ -1030,6 +1223,9 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9H7Y0E2yEeapTv22SxkS-w"/>

         <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9H-cIE2yEeapTv22SxkS-w" value="1"/>

       </ownedAttribute>

+      <ownedAttribute xmi:type="uml:Property" xmi:id="_u-oVIc9rEeefb8sanY33oQ" name="base_Slot" association="_u-fLMM9rEeefb8sanY33oQ">

+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Slot"/>

+      </ownedAttribute>

       <ownedOperation xmi:type="uml:Operation" xmi:id="_Y8AIkAMIEea8i_Eqsm7WeA" name="getSize">

         <ownedParameter xmi:type="uml:Parameter" xmi:id="_bn5HEAMIEea8i_Eqsm7WeA" direction="return">

           <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EInt"/>

@@ -1053,6 +1249,27 @@
       </eAnnotations>

       <ownedEnd xmi:type="uml:Property" xmi:id="_2pyQsE2yEeapTv22SxkS-w" name="valueseries" type="_jEzOIE2yEeapTv22SxkS-w" association="_2pmqgE2yEeapTv22SxkS-w"/>

     </packagedElement>

+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_YY9IwM9rEeefb8sanY33oQ" name="DataSourceInstance">

+      <ownedAttribute xmi:type="uml:Property" xmi:id="_aCJUIs9rEeefb8sanY33oQ" name="base_InstanceSpecification" association="_aCJUIM9rEeefb8sanY33oQ">

+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#InstanceSpecification"/>

+      </ownedAttribute>

+      <ownedAttribute xmi:type="uml:Property" xmi:id="_xODaEs9rEeefb8sanY33oQ" name="series" type="_jEzOIE2yEeapTv22SxkS-w" isDerived="true" association="_xN5pEM9rEeefb8sanY33oQ">

+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_3hGFcM9rEeefb8sanY33oQ"/>

+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_3hPPYM9rEeefb8sanY33oQ" value="*"/>

+      </ownedAttribute>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Extension" xmi:id="_aCJUIM9rEeefb8sanY33oQ" name="E_DataSourceInstance_InstanceSpecification1" memberEnd="_aCJUIc9rEeefb8sanY33oQ _aCJUIs9rEeefb8sanY33oQ">

+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_aCJUIc9rEeefb8sanY33oQ" name="extension_DataSourceInstance" type="_YY9IwM9rEeefb8sanY33oQ" aggregation="composite" association="_aCJUIM9rEeefb8sanY33oQ"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Extension" xmi:id="_u-fLMM9rEeefb8sanY33oQ" name="E_ValueSeries_Slot1" memberEnd="_u-oVIM9rEeefb8sanY33oQ _u-oVIc9rEeefb8sanY33oQ">

+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_u-oVIM9rEeefb8sanY33oQ" name="extension_ValueSeries" type="_jEzOIE2yEeapTv22SxkS-w" aggregation="composite" association="_u-fLMM9rEeefb8sanY33oQ"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Association" xmi:id="_xN5pEM9rEeefb8sanY33oQ" memberEnd="_xODaEs9rEeefb8sanY33oQ _xODaE89rEeefb8sanY33oQ">

+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xODaEM9rEeefb8sanY33oQ" source="org.eclipse.papyrus">

+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xODaEc9rEeefb8sanY33oQ" key="nature" value="UML_Nature"/>

+      </eAnnotations>

+      <ownedEnd xmi:type="uml:Property" xmi:id="_xODaE89rEeefb8sanY33oQ" name="datasourceinstance" type="_YY9IwM9rEeefb8sanY33oQ" association="_xN5pEM9rEeefb8sanY33oQ"/>

+    </packagedElement>

     <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_04KdEAI6EeaiiIMyke7TZw">

       <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_04LEIAI6EeaiiIMyke7TZw" source="http://www.eclipse.org/uml2/2.0.0/UML">

         <references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_Kv8EIKFXEeS_KNX0nfvIVQ"/>

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/profile.ecore b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/profile.ecore
index ae37316..23c1ee3 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/profile.ecore
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/profile/profile.ecore
@@ -23,6 +23,8 @@
         lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Property"/>

     <eStructuralFeatures xsi:type="ecore:EReference" name="dependent" ordered="false"

         eType="#//ValueSeries"/>

+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Slot" ordered="false"

+        lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Slot"/>

   </eClassifiers>

   <eClassifiers xsi:type="ecore:EClass" name="StringSeries" eSuperTypes="#//ValueSeries">

     <eStructuralFeatures xsi:type="ecore:EAttribute" name="values" unique="false"

@@ -44,4 +46,10 @@
         upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"

         transient="true"/>

   </eClassifiers>

+  <eClassifiers xsi:type="ecore:EClass" name="DataSourceInstance">

+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_InstanceSpecification"

+        ordered="false" lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//InstanceSpecification"/>

+    <eStructuralFeatures xsi:type="ecore:EReference" name="series" ordered="false"

+        upperBound="-1" eType="#//ValueSeries" volatile="true" transient="true" derived="true"/>

+  </eClassifiers>

 </ecore:EPackage>

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/DataSourceInstance.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/DataSourceInstance.java
new file mode 100644
index 0000000..e982038
--- /dev/null
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/DataSourceInstance.java
@@ -0,0 +1,87 @@
+/**

+ * Copyright (c) 2016 CEA LIST.

+ * 

+ *  All rights reserved. This program and the accompanying materials

+ *  are made available under the terms of the Eclipse Public License v1.0

+ *  which accompanies this distribution, and is available at

+ *  http://www.eclipse.org/legal/epl-v10.html

+ * 

+ *  Contributors:

+ *   CEA LIST - Initial API and implementation

+ */

+package org.eclipse.papyrus.moka.datavisualization.profile;

+

+import org.eclipse.emf.common.util.EList;

+

+import org.eclipse.emf.ecore.EObject;

+

+import org.eclipse.uml2.uml.InstanceSpecification;

+

+/**

+ * <!-- begin-user-doc -->

+ * A representation of the model object '<em><b>Data Source Instance</b></em>'.

+ * <!-- end-user-doc -->

+ *

+ * <p>

+ * The following features are supported:

+ * </p>

+ * <ul>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getBase_InstanceSpecification <em>Base Instance Specification</em>}</li>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getSeries <em>Series</em>}</li>

+ * </ul>

+ *

+ * @see org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage#getDataSourceInstance()

+ * @model

+ * @generated

+ */

+public interface DataSourceInstance extends EObject {

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	String copyright = "Copyright (c) 2016 CEA LIST.\r\n\r\n All rights reserved. This program and the accompanying materials\r\n are made available under the terms of the Eclipse Public License v1.0\r\n which accompanies this distribution, and is available at\r\n http://www.eclipse.org/legal/epl-v10.html\r\n\r\n Contributors:\r\n  CEA LIST - Initial API and implementation";

+

+	/**

+	 * Returns the value of the '<em><b>Base Instance Specification</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <p>

+	 * If the meaning of the '<em>Base Instance Specification</em>' reference isn't clear,

+	 * there really should be more of a description here...

+	 * </p>

+	 * <!-- end-user-doc -->

+	 * @return the value of the '<em>Base Instance Specification</em>' reference.

+	 * @see #setBase_InstanceSpecification(InstanceSpecification)

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage#getDataSourceInstance_Base_InstanceSpecification()

+	 * @model required="true" ordered="false"

+	 * @generated

+	 */

+	InstanceSpecification getBase_InstanceSpecification();

+

+	/**

+	 * Sets the value of the '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getBase_InstanceSpecification <em>Base Instance Specification</em>}' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @param value the new value of the '<em>Base Instance Specification</em>' reference.

+	 * @see #getBase_InstanceSpecification()

+	 * @generated

+	 */

+	void setBase_InstanceSpecification(InstanceSpecification value);

+

+	/**

+	 * Returns the value of the '<em><b>Series</b></em>' reference list.

+	 * The list contents are of type {@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries}.

+	 * <!-- begin-user-doc -->

+	 * <p>

+	 * If the meaning of the '<em>Series</em>' reference list isn't clear,

+	 * there really should be more of a description here...

+	 * </p>

+	 * <!-- end-user-doc -->

+	 * @return the value of the '<em>Series</em>' reference list.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage#getDataSourceInstance_Series()

+	 * @model transient="true" volatile="true" derived="true" ordered="false"

+	 * @generated

+	 */

+	EList<ValueSeries> getSeries();

+

+} // DataSourceInstance

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/ValueSeries.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/ValueSeries.java
index 4a18ba3..6ce8304 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/ValueSeries.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/ValueSeries.java
@@ -13,6 +13,7 @@
 

 import org.eclipse.emf.ecore.EObject;

 import org.eclipse.uml2.uml.Property;

+import org.eclipse.uml2.uml.Slot;

 

 /**

  * <!-- begin-user-doc -->

@@ -26,6 +27,7 @@
  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBinaryString <em>Binary String</em>}</li>

  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBase_Property <em>Base Property</em>}</li>

  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getDependent <em>Dependent</em>}</li>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBase_Slot <em>Base Slot</em>}</li>

  * </ul>

  *

  * @see org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage#getValueSeries()

@@ -119,6 +121,32 @@
 	void setDependent(ValueSeries value);

 

 	/**

+	 * Returns the value of the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <p>

+	 * If the meaning of the '<em>Base Slot</em>' reference isn't clear,

+	 * there really should be more of a description here...

+	 * </p>

+	 * <!-- end-user-doc -->

+	 * @return the value of the '<em>Base Slot</em>' reference.

+	 * @see #setBase_Slot(Slot)

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage#getValueSeries_Base_Slot()

+	 * @model required="true" ordered="false"

+	 * @generated

+	 */

+	Slot getBase_Slot();

+

+	/**

+	 * Sets the value of the '{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBase_Slot <em>Base Slot</em>}' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @param value the new value of the '<em>Base Slot</em>' reference.

+	 * @see #getBase_Slot()

+	 * @generated

+	 */

+	void setBase_Slot(Slot value);

+

+	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

 	 * @model required="true" ordered="false" indexRequired="true" indexOrdered="false"

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationFactory.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationFactory.java
index 28ee990..8009a30 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationFactory.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationFactory.java
@@ -92,6 +92,15 @@
 	BooleanSeries createBooleanSeries();

 

 	/**

+	 * Returns a new object of class '<em>Data Source Instance</em>'.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @return a new object of class '<em>Data Source Instance</em>'.

+	 * @generated

+	 */

+	DataSourceInstance createDataSourceInstance();

+

+	/**

 	 * Returns the package supported by this factory.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationPackage.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationPackage.java
index 1b116f6..fb0c6fe 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationPackage.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/VisualizationPackage.java
@@ -158,13 +158,22 @@
 	int VALUE_SERIES__DEPENDENT = 2;

 

 	/**

+	 * The feature id for the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int VALUE_SERIES__BASE_SLOT = 3;

+

+	/**

 	 * The number of structural features of the '<em>Value Series</em>' class.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

 	 * @generated

 	 * @ordered

 	 */

-	int VALUE_SERIES_FEATURE_COUNT = 3;

+	int VALUE_SERIES_FEATURE_COUNT = 4;

 

 	/**

 	 * The operation id for the '<em>Get Size</em>' operation.

@@ -231,6 +240,15 @@
 	int STRING_SERIES__DEPENDENT = VALUE_SERIES__DEPENDENT;

 

 	/**

+	 * The feature id for the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int STRING_SERIES__BASE_SLOT = VALUE_SERIES__BASE_SLOT;

+

+	/**

 	 * The feature id for the '<em><b>Values</b></em>' attribute list.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -313,6 +331,15 @@
 	int DOUBLE_SERIES__DEPENDENT = VALUE_SERIES__DEPENDENT;

 

 	/**

+	 * The feature id for the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int DOUBLE_SERIES__BASE_SLOT = VALUE_SERIES__BASE_SLOT;

+

+	/**

 	 * The feature id for the '<em><b>Values</b></em>' attribute list.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -395,6 +422,15 @@
 	int INTEGER_SERIES__DEPENDENT = VALUE_SERIES__DEPENDENT;

 

 	/**

+	 * The feature id for the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int INTEGER_SERIES__BASE_SLOT = VALUE_SERIES__BASE_SLOT;

+

+	/**

 	 * The feature id for the '<em><b>Values</b></em>' attribute list.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -477,6 +513,15 @@
 	int BOOLEAN_SERIES__DEPENDENT = VALUE_SERIES__DEPENDENT;

 

 	/**

+	 * The feature id for the '<em><b>Base Slot</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int BOOLEAN_SERIES__BASE_SLOT = VALUE_SERIES__BASE_SLOT;

+

+	/**

 	 * The feature id for the '<em><b>Values</b></em>' attribute list.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -523,6 +568,53 @@
 

 

 	/**

+	 * The meta object id for the '{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl <em>Data Source Instance</em>}' class.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.impl.VisualizationPackageImpl#getDataSourceInstance()

+	 * @generated

+	 */

+	int DATA_SOURCE_INSTANCE = 6;

+

+	/**

+	 * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION = 0;

+

+	/**

+	 * The feature id for the '<em><b>Series</b></em>' reference list.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int DATA_SOURCE_INSTANCE__SERIES = 1;

+

+	/**

+	 * The number of structural features of the '<em>Data Source Instance</em>' class.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int DATA_SOURCE_INSTANCE_FEATURE_COUNT = 2;

+

+	/**

+	 * The number of operations of the '<em>Data Source Instance</em>' class.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 * @ordered

+	 */

+	int DATA_SOURCE_INSTANCE_OPERATION_COUNT = 0;

+

+

+	/**

 	 * Returns the meta object for class '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSource <em>Data Source</em>}'.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -598,6 +690,17 @@
 	EReference getValueSeries_Dependent();

 

 	/**

+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBase_Slot <em>Base Slot</em>}'.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @return the meta object for the reference '<em>Base Slot</em>'.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getBase_Slot()

+	 * @see #getValueSeries()

+	 * @generated

+	 */

+	EReference getValueSeries_Base_Slot();

+

+	/**

 	 * Returns the meta object for the '{@link org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries#getStringValue(int) <em>Get String Value</em>}' operation.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -702,6 +805,38 @@
 	EAttribute getBooleanSeries_Values();

 

 	/**

+	 * Returns the meta object for class '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance <em>Data Source Instance</em>}'.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @return the meta object for class '<em>Data Source Instance</em>'.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance

+	 * @generated

+	 */

+	EClass getDataSourceInstance();

+

+	/**

+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getBase_InstanceSpecification <em>Base Instance Specification</em>}'.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @return the meta object for the reference '<em>Base Instance Specification</em>'.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getBase_InstanceSpecification()

+	 * @see #getDataSourceInstance()

+	 * @generated

+	 */

+	EReference getDataSourceInstance_Base_InstanceSpecification();

+

+	/**

+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getSeries <em>Series</em>}'.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @return the meta object for the reference list '<em>Series</em>'.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance#getSeries()

+	 * @see #getDataSourceInstance()

+	 * @generated

+	 */

+	EReference getDataSourceInstance_Series();

+

+	/**

 	 * Returns the factory that creates the instances of the model.

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

@@ -785,6 +920,14 @@
 		EReference VALUE_SERIES__DEPENDENT = eINSTANCE.getValueSeries_Dependent();

 

 		/**

+		 * The meta object literal for the '<em><b>Base Slot</b></em>' reference feature.

+		 * <!-- begin-user-doc -->

+		 * <!-- end-user-doc -->

+		 * @generated

+		 */

+		EReference VALUE_SERIES__BASE_SLOT = eINSTANCE.getValueSeries_Base_Slot();

+

+		/**

 		 * The meta object literal for the '<em><b>Get String Value</b></em>' operation.

 		 * <!-- begin-user-doc -->

 		 * <!-- end-user-doc -->

@@ -872,6 +1015,32 @@
 		 */

 		EAttribute BOOLEAN_SERIES__VALUES = eINSTANCE.getBooleanSeries_Values();

 

+		/**

+		 * The meta object literal for the '{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl <em>Data Source Instance</em>}' class.

+		 * <!-- begin-user-doc -->

+		 * <!-- end-user-doc -->

+		 * @see org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl

+		 * @see org.eclipse.papyrus.moka.datavisualization.profile.impl.VisualizationPackageImpl#getDataSourceInstance()

+		 * @generated

+		 */

+		EClass DATA_SOURCE_INSTANCE = eINSTANCE.getDataSourceInstance();

+

+		/**

+		 * The meta object literal for the '<em><b>Base Instance Specification</b></em>' reference feature.

+		 * <!-- begin-user-doc -->

+		 * <!-- end-user-doc -->

+		 * @generated

+		 */

+		EReference DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION = eINSTANCE.getDataSourceInstance_Base_InstanceSpecification();

+

+		/**

+		 * The meta object literal for the '<em><b>Series</b></em>' reference list feature.

+		 * <!-- begin-user-doc -->

+		 * <!-- end-user-doc -->

+		 * @generated

+		 */

+		EReference DATA_SOURCE_INSTANCE__SERIES = eINSTANCE.getDataSourceInstance_Series();

+

 	}

 

 } //VisualizationPackage

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/DataSourceInstanceImpl.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/DataSourceInstanceImpl.java
new file mode 100644
index 0000000..7041ed2
--- /dev/null
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/DataSourceInstanceImpl.java
@@ -0,0 +1,203 @@
+/**

+ * Copyright (c) 2016 CEA LIST.

+ * 

+ *  All rights reserved. This program and the accompanying materials

+ *  are made available under the terms of the Eclipse Public License v1.0

+ *  which accompanies this distribution, and is available at

+ *  http://www.eclipse.org/legal/epl-v10.html

+ * 

+ *  Contributors:

+ *   CEA LIST - Initial API and implementation

+ */

+package org.eclipse.papyrus.moka.datavisualization.profile.impl;

+

+import java.util.Collection;

+

+import org.eclipse.emf.common.notify.Notification;

+

+import org.eclipse.emf.common.util.EList;

+

+import org.eclipse.emf.ecore.EClass;

+import org.eclipse.emf.ecore.InternalEObject;

+

+import org.eclipse.emf.ecore.impl.ENotificationImpl;

+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;

+

+import org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance;

+import org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries;

+import org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage;

+

+import org.eclipse.uml2.uml.InstanceSpecification;

+

+/**

+ * <!-- begin-user-doc -->

+ * An implementation of the model object '<em><b>Data Source Instance</b></em>'.

+ * <!-- end-user-doc -->

+ * <p>

+ * The following features are implemented:

+ * </p>

+ * <ul>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl#getBase_InstanceSpecification <em>Base Instance Specification</em>}</li>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl#getSeries <em>Series</em>}</li>

+ * </ul>

+ *

+ * @generated

+ */

+public class DataSourceInstanceImpl extends MinimalEObjectImpl.Container implements DataSourceInstance {

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public static final String copyright = "Copyright (c) 2016 CEA LIST.\r\n\r\n All rights reserved. This program and the accompanying materials\r\n are made available under the terms of the Eclipse Public License v1.0\r\n which accompanies this distribution, and is available at\r\n http://www.eclipse.org/legal/epl-v10.html\r\n\r\n Contributors:\r\n  CEA LIST - Initial API and implementation";

+

+	/**

+	 * The cached value of the '{@link #getBase_InstanceSpecification() <em>Base Instance Specification</em>}' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @see #getBase_InstanceSpecification()

+	 * @generated

+	 * @ordered

+	 */

+	protected InstanceSpecification base_InstanceSpecification;

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	protected DataSourceInstanceImpl() {

+		super();

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	@Override

+	protected EClass eStaticClass() {

+		return VisualizationPackage.Literals.DATA_SOURCE_INSTANCE;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public InstanceSpecification getBase_InstanceSpecification() {

+		if (base_InstanceSpecification != null && base_InstanceSpecification.eIsProxy()) {

+			InternalEObject oldBase_InstanceSpecification = (InternalEObject)base_InstanceSpecification;

+			base_InstanceSpecification = (InstanceSpecification)eResolveProxy(oldBase_InstanceSpecification);

+			if (base_InstanceSpecification != oldBase_InstanceSpecification) {

+				if (eNotificationRequired())

+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION, oldBase_InstanceSpecification, base_InstanceSpecification));

+			}

+		}

+		return base_InstanceSpecification;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public InstanceSpecification basicGetBase_InstanceSpecification() {

+		return base_InstanceSpecification;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public void setBase_InstanceSpecification(InstanceSpecification newBase_InstanceSpecification) {

+		InstanceSpecification oldBase_InstanceSpecification = base_InstanceSpecification;

+		base_InstanceSpecification = newBase_InstanceSpecification;

+		if (eNotificationRequired())

+			eNotify(new ENotificationImpl(this, Notification.SET, VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION, oldBase_InstanceSpecification, base_InstanceSpecification));

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public EList<ValueSeries> getSeries() {

+		// TODO: implement this method to return the 'Series' reference list

+		// Ensure that you remove @generated or mark it @generated NOT

+		throw new UnsupportedOperationException();

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	@Override

+	public Object eGet(int featureID, boolean resolve, boolean coreType) {

+		switch (featureID) {

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION:

+				if (resolve) return getBase_InstanceSpecification();

+				return basicGetBase_InstanceSpecification();

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__SERIES:

+				return getSeries();

+		}

+		return super.eGet(featureID, resolve, coreType);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	@SuppressWarnings("unchecked")

+	@Override

+	public void eSet(int featureID, Object newValue) {

+		switch (featureID) {

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION:

+				setBase_InstanceSpecification((InstanceSpecification)newValue);

+				return;

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__SERIES:

+				getSeries().clear();

+				getSeries().addAll((Collection<? extends ValueSeries>)newValue);

+				return;

+		}

+		super.eSet(featureID, newValue);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	@Override

+	public void eUnset(int featureID) {

+		switch (featureID) {

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION:

+				setBase_InstanceSpecification((InstanceSpecification)null);

+				return;

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__SERIES:

+				getSeries().clear();

+				return;

+		}

+		super.eUnset(featureID);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	@Override

+	public boolean eIsSet(int featureID) {

+		switch (featureID) {

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION:

+				return base_InstanceSpecification != null;

+			case VisualizationPackage.DATA_SOURCE_INSTANCE__SERIES:

+				return !getSeries().isEmpty();

+		}

+		return super.eIsSet(featureID);

+	}

+

+} //DataSourceInstanceImpl

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/ValueSeriesImpl.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/ValueSeriesImpl.java
index 0416578..9c125d7 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/ValueSeriesImpl.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/ValueSeriesImpl.java
@@ -26,6 +26,7 @@
 import org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.VisualizationPackage;

 import org.eclipse.uml2.uml.Property;

+import org.eclipse.uml2.uml.Slot;

 

 /**

  * <!-- begin-user-doc -->

@@ -38,6 +39,7 @@
  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.ValueSeriesImpl#getBinaryString <em>Binary String</em>}</li>

  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.ValueSeriesImpl#getBase_Property <em>Base Property</em>}</li>

  *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.ValueSeriesImpl#getDependent <em>Dependent</em>}</li>

+ *   <li>{@link org.eclipse.papyrus.moka.datavisualization.profile.impl.ValueSeriesImpl#getBase_Slot <em>Base Slot</em>}</li>

  * </ul>

  *

  * @generated

@@ -91,6 +93,16 @@
 	protected ValueSeries dependent;

 

 	/**

+	 * The cached value of the '{@link #getBase_Slot() <em>Base Slot</em>}' reference.

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @see #getBase_Slot()

+	 * @generated

+	 * @ordered

+	 */

+	protected Slot base_Slot;

+

+	/**

 	 * <!-- begin-user-doc -->

 	 * <!-- end-user-doc -->

 	 * @generated

@@ -211,6 +223,44 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	public Slot getBase_Slot() {

+		if (base_Slot != null && base_Slot.eIsProxy()) {

+			InternalEObject oldBase_Slot = (InternalEObject)base_Slot;

+			base_Slot = (Slot)eResolveProxy(oldBase_Slot);

+			if (base_Slot != oldBase_Slot) {

+				if (eNotificationRequired())

+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, VisualizationPackage.VALUE_SERIES__BASE_SLOT, oldBase_Slot, base_Slot));

+			}

+		}

+		return base_Slot;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public Slot basicGetBase_Slot() {

+		return base_Slot;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public void setBase_Slot(Slot newBase_Slot) {

+		Slot oldBase_Slot = base_Slot;

+		base_Slot = newBase_Slot;

+		if (eNotificationRequired())

+			eNotify(new ENotificationImpl(this, Notification.SET, VisualizationPackage.VALUE_SERIES__BASE_SLOT, oldBase_Slot, base_Slot));

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

 	public String getStringValue(int index) {

 		// TODO: implement this method

 		// Ensure that you remove @generated or mark it @generated NOT

@@ -244,6 +294,9 @@
 			case VisualizationPackage.VALUE_SERIES__DEPENDENT:

 				if (resolve) return getDependent();

 				return basicGetDependent();

+			case VisualizationPackage.VALUE_SERIES__BASE_SLOT:

+				if (resolve) return getBase_Slot();

+				return basicGetBase_Slot();

 		}

 		return super.eGet(featureID, resolve, coreType);

 	}

@@ -265,6 +318,9 @@
 			case VisualizationPackage.VALUE_SERIES__DEPENDENT:

 				setDependent((ValueSeries)newValue);

 				return;

+			case VisualizationPackage.VALUE_SERIES__BASE_SLOT:

+				setBase_Slot((Slot)newValue);

+				return;

 		}

 		super.eSet(featureID, newValue);

 	}

@@ -286,6 +342,9 @@
 			case VisualizationPackage.VALUE_SERIES__DEPENDENT:

 				setDependent((ValueSeries)null);

 				return;

+			case VisualizationPackage.VALUE_SERIES__BASE_SLOT:

+				setBase_Slot((Slot)null);

+				return;

 		}

 		super.eUnset(featureID);

 	}

@@ -304,6 +363,8 @@
 				return base_Property != null;

 			case VisualizationPackage.VALUE_SERIES__DEPENDENT:

 				return dependent != null;

+			case VisualizationPackage.VALUE_SERIES__BASE_SLOT:

+				return base_Slot != null;

 		}

 		return super.eIsSet(featureID);

 	}

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationFactoryImpl.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationFactoryImpl.java
index 96ab62d..75d406e 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationFactoryImpl.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationFactoryImpl.java
@@ -78,6 +78,7 @@
 			case VisualizationPackage.DOUBLE_SERIES: return createDoubleSeries();

 			case VisualizationPackage.INTEGER_SERIES: return createIntegerSeries();

 			case VisualizationPackage.BOOLEAN_SERIES: return createBooleanSeries();

+			case VisualizationPackage.DATA_SOURCE_INSTANCE: return createDataSourceInstance();

 			default:

 				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");

 		}

@@ -148,6 +149,16 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	public DataSourceInstance createDataSourceInstance() {

+		DataSourceInstanceImpl dataSourceInstance = new DataSourceInstanceImpl();

+		return dataSourceInstance;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

 	public VisualizationPackage getVisualizationPackage() {

 		return (VisualizationPackage)getEPackage();

 	}

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationPackageImpl.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationPackageImpl.java
index e7f28f7..18bf729 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationPackageImpl.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/impl/VisualizationPackageImpl.java
@@ -21,6 +21,7 @@
 

 import org.eclipse.papyrus.moka.datavisualization.profile.BooleanSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.DataSource;

+import org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance;

 import org.eclipse.papyrus.moka.datavisualization.profile.DoubleSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.IntegerSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.StringSeries;

@@ -89,6 +90,13 @@
 	private EClass booleanSeriesEClass = null;

 

 	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	private EClass dataSourceInstanceEClass = null;

+

+	/**

 	 * Creates an instance of the model <b>Package</b>, registered with

 	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package

 	 * package URI value.

@@ -220,6 +228,15 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	public EReference getValueSeries_Base_Slot() {

+		return (EReference)valueSeriesEClass.getEStructuralFeatures().get(3);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

 	public EOperation getValueSeries__GetStringValue__int() {

 		return valueSeriesEClass.getEOperations().get(1);

 	}

@@ -310,6 +327,33 @@
 	 * <!-- end-user-doc -->

 	 * @generated

 	 */

+	public EClass getDataSourceInstance() {

+		return dataSourceInstanceEClass;

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public EReference getDataSourceInstance_Base_InstanceSpecification() {

+		return (EReference)dataSourceInstanceEClass.getEStructuralFeatures().get(0);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

+	public EReference getDataSourceInstance_Series() {

+		return (EReference)dataSourceInstanceEClass.getEStructuralFeatures().get(1);

+	}

+

+	/**

+	 * <!-- begin-user-doc -->

+	 * <!-- end-user-doc -->

+	 * @generated

+	 */

 	public VisualizationFactory getVisualizationFactory() {

 		return (VisualizationFactory)getEFactoryInstance();

 	}

@@ -341,6 +385,7 @@
 		createEAttribute(valueSeriesEClass, VALUE_SERIES__BINARY_STRING);

 		createEReference(valueSeriesEClass, VALUE_SERIES__BASE_PROPERTY);

 		createEReference(valueSeriesEClass, VALUE_SERIES__DEPENDENT);

+		createEReference(valueSeriesEClass, VALUE_SERIES__BASE_SLOT);

 		createEOperation(valueSeriesEClass, VALUE_SERIES___GET_SIZE);

 		createEOperation(valueSeriesEClass, VALUE_SERIES___GET_STRING_VALUE__INT);

 

@@ -355,6 +400,10 @@
 

 		booleanSeriesEClass = createEClass(BOOLEAN_SERIES);

 		createEAttribute(booleanSeriesEClass, BOOLEAN_SERIES__VALUES);

+

+		dataSourceInstanceEClass = createEClass(DATA_SOURCE_INSTANCE);

+		createEReference(dataSourceInstanceEClass, DATA_SOURCE_INSTANCE__BASE_INSTANCE_SPECIFICATION);

+		createEReference(dataSourceInstanceEClass, DATA_SOURCE_INSTANCE__SERIES);

 	}

 

 	/**

@@ -403,6 +452,7 @@
 		initEAttribute(getValueSeries_BinaryString(), theTypesPackage.getString(), "binaryString", null, 1, 1, ValueSeries.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);

 		initEReference(getValueSeries_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, ValueSeries.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);

 		initEReference(getValueSeries_Dependent(), this.getValueSeries(), null, "dependent", null, 0, 1, ValueSeries.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);

+		initEReference(getValueSeries_Base_Slot(), theUMLPackage.getSlot(), null, "base_Slot", null, 1, 1, ValueSeries.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);

 

 		initEOperation(getValueSeries__GetSize(), ecorePackage.getEInt(), "getSize", 1, 1, IS_UNIQUE, !IS_ORDERED);

 

@@ -421,6 +471,10 @@
 		initEClass(booleanSeriesEClass, BooleanSeries.class, "BooleanSeries", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

 		initEAttribute(getBooleanSeries_Values(), ecorePackage.getEBoolean(), "values", null, 0, -1, BooleanSeries.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

 

+		initEClass(dataSourceInstanceEClass, DataSourceInstance.class, "DataSourceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);

+		initEReference(getDataSourceInstance_Base_InstanceSpecification(), theUMLPackage.getInstanceSpecification(), null, "base_InstanceSpecification", null, 1, 1, DataSourceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);

+		initEReference(getDataSourceInstance_Series(), this.getValueSeries(), null, "series", null, 0, -1, DataSourceInstance.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);

+

 		// Create resource

 		createResource(eNS_URI);

 

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationAdapterFactory.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationAdapterFactory.java
index 1d4ecac..ab4ad25 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationAdapterFactory.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationAdapterFactory.java
@@ -108,6 +108,10 @@
 				return createBooleanSeriesAdapter();

 			}

 			@Override

+			public Adapter caseDataSourceInstance(DataSourceInstance object) {

+				return createDataSourceInstanceAdapter();

+			}

+			@Override

 			public Adapter defaultCase(EObject object) {

 				return createEObjectAdapter();

 			}

@@ -212,6 +216,20 @@
 	}

 

 	/**

+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance <em>Data Source Instance</em>}'.

+	 * <!-- begin-user-doc -->

+	 * This default implementation returns null so that we can easily ignore cases;

+	 * it's useful to ignore a case when inheritance will catch all the cases anyway.

+	 * <!-- end-user-doc -->

+	 * @return the new adapter.

+	 * @see org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance

+	 * @generated

+	 */

+	public Adapter createDataSourceInstanceAdapter() {

+		return null;

+	}

+

+	/**

 	 * Creates a new adapter for the default case.

 	 * <!-- begin-user-doc -->

 	 * This default implementation returns null.

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationSwitch.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationSwitch.java
index fe1b295..1811555 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationSwitch.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src-gen/org/eclipse/papyrus/moka/datavisualization/profile/util/VisualizationSwitch.java
@@ -122,6 +122,12 @@
 				if (result == null) result = defaultCase(theEObject);

 				return result;

 			}

+			case VisualizationPackage.DATA_SOURCE_INSTANCE: {

+				DataSourceInstance dataSourceInstance = (DataSourceInstance)theEObject;

+				T result = caseDataSourceInstance(dataSourceInstance);

+				if (result == null) result = defaultCase(theEObject);

+				return result;

+			}

 			default: return defaultCase(theEObject);

 		}

 	}

@@ -217,6 +223,21 @@
 	}

 

 	/**

+	 * Returns the result of interpreting the object as an instance of '<em>Data Source Instance</em>'.

+	 * <!-- begin-user-doc -->

+	 * This implementation returns null;

+	 * returning a non-null result will terminate the switch.

+	 * <!-- end-user-doc -->

+	 * @param object the target of the switch.

+	 * @return the result of interpreting the object as an instance of '<em>Data Source Instance</em>'.

+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)

+	 * @generated

+	 */

+	public T caseDataSourceInstance(DataSourceInstance object) {

+		return null;

+	}

+

+	/**

 	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.

 	 * <!-- begin-user-doc -->

 	 * This implementation returns null;

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomBooleanSeries.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomBooleanSeries.java
index 645eb7e..d12493b 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomBooleanSeries.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomBooleanSeries.java
@@ -18,6 +18,12 @@
 import org.eclipse.papyrus.moka.datavisualization.util.VisualizationUtil;

 

 public class CustomBooleanSeries extends BooleanSeriesImpl {

+	

+	public CustomBooleanSeries() {

+		// we modify the default value in order to force serialization

+		binaryString = "";

+	}

+	

 	@Override

 	public String getStringValue(int index) {

 		return 	getValues().get(index).toString();

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomDataSourceInstance.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomDataSourceInstance.java
new file mode 100644
index 0000000..29c6f86
--- /dev/null
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomDataSourceInstance.java
@@ -0,0 +1,41 @@
+/**

+ * Copyright (c) 2017 CEA LIST.

+ * 

+ *  All rights reserved. This program and the accompanying materials

+ *  are made available under the terms of the Eclipse Public License v1.0

+ *  which accompanies this distribution, and is available at

+ *  http://www.eclipse.org/legal/epl-v10.html

+ * 

+ *  Contributors:

+ *   CEA LIST - Initial API and implementation

+ */

+

+package org.eclipse.papyrus.moka.datavisualization.profile.custom;

+

+import org.eclipse.emf.common.util.BasicEList;

+import org.eclipse.emf.common.util.EList;

+import org.eclipse.emf.ecore.EObject;

+import org.eclipse.papyrus.moka.datavisualization.profile.ValueSeries;

+import org.eclipse.papyrus.moka.datavisualization.profile.impl.DataSourceInstanceImpl;

+import org.eclipse.uml2.uml.InstanceSpecification;

+import org.eclipse.uml2.uml.Slot;

+

+public class CustomDataSourceInstance extends DataSourceInstanceImpl {

+

+	@Override

+	public EList<ValueSeries> getSeries() {

+		EList<ValueSeries> ret = new BasicEList<ValueSeries>();

+		InstanceSpecification baseInstanceSpecification = getBase_InstanceSpecification();

+		if (baseInstanceSpecification != null){

+			for (Slot slot : baseInstanceSpecification.getSlots()){

+				for( EObject stereoApplication : slot.getStereotypeApplications()){

+					if (stereoApplication instanceof ValueSeries){

+						ret.add((ValueSeries) stereoApplication);

+					}

+				}

+			}

+		}

+		return ret;

+	}

+	

+}

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomIntegerSeries.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomIntegerSeries.java
index a35128e..7728794 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomIntegerSeries.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomIntegerSeries.java
@@ -18,6 +18,12 @@
 import org.eclipse.papyrus.moka.datavisualization.util.VisualizationUtil;

 

 public class CustomIntegerSeries extends IntegerSeriesImpl {

+	

+	public CustomIntegerSeries() {

+		// we modify the default value in order to force serialization

+		binaryString = "";

+	}

+	

 	@Override

 	public String getStringValue(int index) {

 		return 	getValues().get(index).toString();

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomStringSeries.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomStringSeries.java
index 68d4f59..bf3b8cf 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomStringSeries.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomStringSeries.java
@@ -18,6 +18,12 @@
 import org.eclipse.papyrus.moka.datavisualization.util.VisualizationUtil;

 

 public class CustomStringSeries extends StringSeriesImpl {

+	

+	public CustomStringSeries() {

+		// we modify the default value in order to force serialization

+		binaryString = "";

+	}

+	

 	@Override

 	public String getStringValue(int index) {

 		return 	getValues().get(index);

diff --git a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomVisualizationPackageFactory.java b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomVisualizationPackageFactory.java
index 03597e7..1901c36 100644
--- a/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomVisualizationPackageFactory.java
+++ b/bundles/core/tools/visualization/org.eclipse.papyrus.moka.datavisualization/src/org/eclipse/papyrus/moka/datavisualization/profile/custom/CustomVisualizationPackageFactory.java
@@ -16,6 +16,7 @@
 

 import org.eclipse.papyrus.moka.datavisualization.profile.BooleanSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.DataSource;

+import org.eclipse.papyrus.moka.datavisualization.profile.DataSourceInstance;

 import org.eclipse.papyrus.moka.datavisualization.profile.DoubleSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.IntegerSeries;

 import org.eclipse.papyrus.moka.datavisualization.profile.StringSeries;

@@ -29,8 +30,11 @@
 		return new CustomDataSources();

 	}

 	

-	

-	

+	@Override

+	public DataSourceInstance createDataSourceInstance() {

+		return new CustomDataSourceInstance();

+	}

+

 	@Override

 	public DoubleSeries createDoubleSeries() {