diff --git a/doc/Release_Notes.html b/doc/Release_Notes.html
index 28af186..a3c5bc9 100644
--- a/doc/Release_Notes.html
+++ b/doc/Release_Notes.html
@@ -13,20 +13,20 @@
 				<a href="#ReleaseNotesforSirius">Release Notes for Sirius</a>
 				<ol style="list-style: disc;">
 					<li>
-						<a href="#sirius6.3.4">Changes in Sirius 6.3.4</a>
+						<a href="#sirius6.4.0">Changes in Sirius 6.4.0</a>
 						<ol style="list-style: disc;">
 							<li>
 								<a href="#UserVisibleChanges">User-Visible Changes</a>
 							</li>
 							<li>
+								<a href="#SpecifierVisibleChanges">Specifier-Visible Changes</a>
+							</li>
+							<li>
 								<a href="#DeveloperVisibleChanges">Developer-Visible Changes</a>
 							</li>
 						</ol>
 					</li>
 					<li>
-						<a href="#sirius6.3.3">Changes in Sirius 6.3.3</a>
-					</li>
-					<li>
 						<a href="#sirius6.3.2">Changes in Sirius 6.3.2</a>
 						<ol style="list-style: disc;">
 							<li>
@@ -55,7 +55,7 @@
 								<a href="#UserVisibleChanges4">User-Visible Changes</a>
 							</li>
 							<li>
-								<a href="#SpecifierVisibleChanges">Specifier-Visible Changes</a>
+								<a href="#SpecifierVisibleChanges2">Specifier-Visible Changes</a>
 							</li>
 							<li>
 								<a href="#DeveloperVisibleChanges4">Developer-Visible Changes</a>
@@ -80,7 +80,7 @@
 								<a href="#UserVisibleChanges5">User-Visible Changes</a>
 							</li>
 							<li>
-								<a href="#SpecifierVisibleChanges2">Specifier-Visible Changes</a>
+								<a href="#SpecifierVisibleChanges3">Specifier-Visible Changes</a>
 							</li>
 							<li>
 								<a href="#DeveloperVisibleChanges6">Developer-Visible Changes</a>
@@ -113,7 +113,7 @@
 								<a href="#UserVisibleChanges7">User-Visible Changes</a>
 							</li>
 							<li>
-								<a href="#SpecifierVisibleChanges3">Specifier-Visible Changes</a>
+								<a href="#SpecifierVisibleChanges4">Specifier-Visible Changes</a>
 							</li>
 							<li>
 								<a href="#DeveloperVisibleChanges8">Developer-Visible Changes</a>
@@ -127,7 +127,7 @@
 								<a href="#UserVisibleChanges8">User-Visible Changes</a>
 							</li>
 							<li>
-								<a href="#SpecifierVisibleChanges4">Specifier-Visible Changes</a>
+								<a href="#SpecifierVisibleChanges5">Specifier-Visible Changes</a>
 							</li>
 							<li>
 								<a href="#DeveloperVisibleChanges9">Developer-Visible Changes</a>
@@ -140,24 +140,153 @@
 		<p>This document contains the release notes for recent major releases of Sirius. See also 
 			<a href="Release_Notes_Previous.html">the release notes from previous versions</a> for details about older releases.
 		</p>
-		<h2 id="sirius6.3.4">Changes in Sirius 6.3.4</h2>
+		<h2 id="sirius6.4.0">Changes in Sirius 6.4.0</h2>
+		<p><span class="label label-info">Important</span> In order to reduce the maintenance burden of Sirius, we have decided to deprecate some older mechanisms for which there exist better alternatives. In Sirius 6.4.x all of these are still available, but they may be removed in future versions
+			<br/>(6.5 or 7.0) without further notice. If any of these planned removals are an issue for you, please 
+			<a href="https://bugs.eclipse.org/bugs/enter_bug.cgi?product=Sirius">open a ticket</a> so we can discuss options.
+		</p>
+		<p>The features which are deprecated starting from 6.4.0 are:</p>
+		<ul>
+			<li>
+				<b>Exporting diagrams as GIF, BMP or PDF</b>. We will focus on PNG and JPG support for raster formats, and SVG for vector formats. If you need another image format, use an external tool to do the conversion.
+			</li>
+			<li>
+				<b>OCL expressions in VSMs (
+					<code>odesign</code> files)
+				</b>, as supported by the 
+				<code>org.eclipse.sirius.common.ocl</code> plug-in. Use AQL expressions instead.
+			</li>
+			<li>
+				<b>The &#8220;Workflow&#8221; feature</b>. Workflow was experimental and to our knowledge not used in practice. This corresponds to the 
+				<code>org.eclipse.sirius.workflow.*</code> and 
+				<code>org.eclipse.sirius.editor.workflow</code> plug-ins.
+			</li>
+			<li>
+				<b>The server parts which supported the Workflow feature</b>. It was our first experiment in moving Sirius to the web, but this is now replaced by the newly published 
+				<a href="https://www.eclipse.org/sirius/sirius-web.html">Sirius Web</a>. This corresponds to all the 
+				<code>org.eclipse.sirius.server.*</code> plug-ins.
+			</li>
+		</ul>
+		<p>Also note that Sirius 6.4 is still compatible with Java 8, but we may move to Java 11 (LTS) in 2021. Eclipse 2020-09 already requires Java 11 to start, and Java 8 is quite old at this point. When we move to Java 11 we will drop support for Eclipse versions older than 2020-09. Again, if that is an issue for you, please open a ticket so we can discuss it.</p>
+		<p>Sirius 6.4 is officially supported on Eclipse 2020-03 to 2020-12, with Eclipse 2020-06 being the reference platform (where the tests are run and verified). It most likely works fine with any Eclipse from 2019-06 onward, but this is not guaranteed.</p>
 		<h3 id="UserVisibleChanges">User-Visible Changes</h3>
 		<ul>
-			<li><span class="label label-info">Modified</span> In properties views, the labels are correctly rendered again. There used to be a regression on recent versions of Eclipse which made changes in styling/theming. Sirius now includes an updated version of EEF (v2.1.5) which fixes [the issue](https://bugs.eclipse.org/bugs/show_bug.cgi?id=552626).</li>
+			<li><span class="label label-success">Added</span> With a non modeling project (a.k.a. legacy project), a &#8220;Invalid representations&#8221; section is displayed under the aird node. It is displayed only if a representation is invalid in the Sirius Session.</li>
 		</ul>
+		<h3 id="SpecifierVisibleChanges">Specifier-Visible Changes</h3>
+		<p>Several improvements have been done concerning ELK integration. This feature is always considered as experimental (because several bugs remain). Additional documentation is available 
+			<a href="specifier/diagrams/Diagrams.html#useElk">here</a> .
+		</p>
 		<h3 id="DeveloperVisibleChanges">Developer-Visible Changes</h3>
 		<ul>
-			<li>Sirius 6.3.4 is compatible with Eclipse 2020-09 (this required some internal changes to adapt to changes in the platform).</li>
-			<li>EEF has been updated to version 2.1.5 which fixes </li>
+			<li><span class="label label-success">Added</span> 
+				<code>org.eclipse.sirius.ui.tools.api.dialogs.AnalysisSelectorFilteredItemsSelectionDialog</code> has been created in order to have custom analysis selector provider able to modify the analysis selector dialog.
+			</li>
+			<li><span class="label label-success">Added</span> The method 
+				<code>org.eclipse.sirius.tools.api.command.ui.UICallBack.askUserToRefreshTheDiagram()</code> has been added. It is used to ask the user to refresh the representation when something wrong happens when opening the editor. This method allows to skip the UI part.
+			</li>
+			<li><span class="label label-success">Added</span> The method 
+				<code>org.eclipse.sirius.ui.business.api.dialect.DialectEditor.isLastRepresentationRefreshSucceeded()</code> to know if the last refresh done in the editor has succeeded.
+			</li>
+			<li><span class="label label-info">Modified</span> Upgraded ELK version from 0.6.1 to 0.7.0, see the 
+				<a href="https://projects.eclipse.org/projects/modeling.elk/releases/0.7.0">ELK documentation</a> for the list of changes in that version (and previous).
+			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support">Changes in 
-			<code>org.eclipse.sirius.tests.swtbot.support</code>
+		<h4 id="Changesinorg.eclipse.sirius">Changes in  
+			<code>org.eclipse.sirius</code>
 		</h4>
 		<ul>
-			<li>The Sirius SWTBot test APIs have been updated to be compatible with SWTBot 3.0 final (in addition to SWTBot 3.0M2).</li>
+			<li><span class="label label-info">Modified</span> The method  
+				<code>org.eclipse.sirius.business.api.session.danalysis.DAnalysisSelectorProvider.getPriority()</code> has been added. It is used in 
+				<code>org.eclipse.sirius.business.api.session.danalysis.DAnalysisSelectorService.getSelector(DAnalysisSession)</code> to ensure that the right DAnalysisSelector is used. The DAnalysisSelector is searched first with the DAnalysisSelectorProvider with higher priority.
+			</li>
 		</ul>
-		<h2 id="sirius6.3.3">Changes in Sirius 6.3.3</h2>
-		<p>Sirius 6.3.3 fixes a single performance issue which only occurred in specific circumstances should not have any visible impact in normal use.</p>
+		<h4 id="Changesinorg.eclipse.sirius.common">Changes in  
+			<code>org.eclipse.sirius.common</code>
+		</h4>
+		<ul>
+			<li><span class="label label-success">Added</span> A new method, 
+				<code>org.eclipse.sirius.common.tools.api.util.CommandStackUtil.flushOperations(CommandStack)</code> has been added to flush the command stack. By default the 
+				<code>CommandStack.flush()</code> &#8220;disposes all the commands in the stack&#8221;. Concretely, it removes the default context from the list of contexts of all operations. And operations without context, after this, are removed from history. In several cases, it is not enough. The 
+				<code>ResourceUndoContext</code> must also be removed. This is what this method done to really removed operations from IOperationHistory. This method was already used in 
+				<code>org.eclipse.sirius.business.internal.session.danalysis.DAnalysisSessionImpl</code>, it has been extracted from here.
+			</li>
+			<li><span class="label label-success">Added</span> A new query, 
+				<code>org.eclipse.sirius.common.tools.api.query.IllegalStateExceptionQuery.isAConnectionLostException()</code>, has been added to detect a specific kind of 
+				<code>IllegalStateException</code>. In a collaborative environment, Obeo Designer Team Edition or Team For Capella for example, when the data is hosted on a server, the connection with the server can be lost. Sirius is not ready to handle this context. If Sirius tries to access to data, for example with an async refresh of the UI that needs information from data to be refreshed, a 
+				<code>org.eclipse.net4j.util.lifecycle.LifecycleException</code> is thrown with the message 
+				<code>"Not active: CDOTransactionImpl"</code>. This kind of errors is showed to the end-user instead of silently be caught. Indeed, in this situation, the UI should be refreshed with &#8220;blank data&#8221; instead of displaying an &#8220;incomprehensible&#8221; popup to the end-user. This new query allows to detect this specific case. The template to use it is:
+			</li>
+		</ul>
+		<pre><code>try {
+    //code to protect
+} catch (IllegalStateException e) {
+	if (new IllegalStateExceptionQuery(e).isAConnectionLostException()) {
+	    // Generally catch silently the exception
+	} else {
+	    throw e;
+	}
+}
+
+</code></pre>
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui">Changes in  
+			<code>org.eclipse.sirius.diagram.ui</code>
+		</h4>
+		<ul>
+			<li><span class="label label-success">Added</span> A new method, 
+				<code>getDefaultDimension()</code> has been added in 
+				<code>org.eclipse.sirius.diagram.ui.edit.api.part.AbstractDiagramElementContainerEditPart()</code>. This method was already used previously in Sirius but was private. It is now public and is used for example for having information during ELK layout.
+			</li>
+			<li><span class="label label-success">Added</span> A new method, 
+				<code>layoutEditParts(List, IAdaptable, boolean)</code> has been added in 
+				<code>org.eclipse.sirius.diagram.ui.tools.api.layout.provider.AbstractLayoutProvider</code>. It allows for implementations to do specific code according to the arrangeAll or arrangeSelection aspect when layoutEditParts is called. By default, the code called is the same than the 
+				<code>org.eclipse.gmf.runtime.diagram.ui.services.layout.AbstractLayoutEditPartProvider.layoutEditParts(List, IAdaptable)</code> implementation.
+			</li>
+			<li><span class="label label-success">Added</span> A new method, 
+				<code>useStandardArrangeSelectionMechanism()</code> has been added in 
+				<code>org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm</code> to know if a specific layout algorithm relies on the behavior of 
+				<code>org.eclipse.sirius.diagram.ui.tools.internal.layout.provider.ArrangeSelectionLayoutProvider</code>. Previously, this was the case for all layout algorithm but it can be useful to disable it (for ELK layout for example). This method is associated with 
+				<code>org.eclipse.sirius.diagram.ui.api.layout.CustomLayoutAlgorithm.CustomLayoutAlgorithmBuilder.setStandardArrangeSelectionMechanism(boolean)</code>
+			</li>
+		</ul>
+		<ul>
+			<li><span class="label label-success">Added</span> A new API in 
+				<code>org.eclipse.sirius.diagram.ui.tools.api.format.MappingBasedSiriusFormatManagerFactory</code> has been added to make it possible to apply a copy-paste format to an existing or a new diagram with different semantic targets. This API receives a mapping between the source and target semantic elements to retrieve which graphical element in the target diagram corresponds to the one in source diagram. See the 
+				<a href="developer/copy_paste_format_new_semantic.html">developer</a> documentation for more details.
+			</li>
+		</ul>
+		<h4 id="Changesinorg.eclipse.sirius.ui">Changes in  
+			<code>org.eclipse.sirius.ui</code>
+		</h4>
+		<ul>
+			<li><span class="label label-success">Added</span> A new method, 
+				<code>preClose()</code> has been added in 
+				<code>org.eclipse.sirius.ui.business.api.dialect.DialectEditor</code>. This method is called in sync when the editor is asking to be closed (the real closure is done in async). This allows to dispose actions, for example, as soon as the closure is requested. There is a default implementation, that does nothing, for all dialect editors.
+			</li>
+		</ul>
+		<h4 id="Changesinorg.eclipse.sirius.tests.junit.support">Changes in  
+			<code>org.eclipse.sirius.tests.junit.support</code>
+		</h4>
+		<ul>
+			<li><span class="label label-success">Added</span> New methods have been added to 
+				<code>org.eclipse.sirius.tests.support.api.TestsUtil</code> to check the current Java runtime version. The parameter is the expected version of Java, i.e: ...7, 8, 9, ..., 13, 14, ...
+				<ul>
+					<li>
+						<code>isJavaVersion(int)</code>
+					</li>
+					<li>
+						<code>isJavaVersionOrOlder(int)</code>
+					</li>
+					<li>
+						<code>isJavaVersionOrNewer(int)</code>
+					</li>
+				</ul>
+			</li>
+			<li><span class="label label-success">Added</span> The method 
+				<code>org.eclipse.sirius.tests.support.api.SiriusTestCase.waitSaveSessionJob()</code> has been added to ensure that the SaveSessionJob, potentially triggered by 
+				<code>org.eclipse.sirius.ui.business.internal.session.SaveSessionWhenNoDialectEditorsListener.statusChangedInternal(Collection&lt;ResourceStatusChange&gt;)</code> is finished before continue. It can be call, for example, after changing the list of selected viewpoints, without any editor opened.
+			</li>
+		</ul>
 		<h2 id="sirius6.3.2">Changes in Sirius 6.3.2</h2>
 		<h3 id="UserVisibleChanges2">User-Visible Changes</h3>
 		<ul>
@@ -172,7 +301,7 @@
 		<img border="0" src="images/combined_fragment_label_before.png"/> With Sirius 6.3.2, the label is now on the top of execution: 
 		<img border="0" src="images/combined_fragment_label_after.png"/>
 		<h3 id="DeveloperVisibleChanges2">Developer-Visible Changes</h3>
-		<h4 id="Changesinorg.eclipse.sirius.common">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.common2">Changes in  
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -180,7 +309,7 @@
 				<code>org.eclipse.sirius.common.package_meta_data</code> extension point, it is now possible for a given metamodel (nsURI) to declare some EClasses as potential DocumentRoots. This is needed with some XSD-derived metamodels which normally declare some of their containment references as transient to make sure Sirius will properly consider these classes (and their contents) as needing to be serialized. 
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui2">Changes in  
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -208,6 +337,10 @@
 			</li>
 		</ul>
 		<h2 id="sirius6.3.1">Changes in Sirius 6.3.1</h2>
+		<p>
+			<strong>IMPORTANT NOTE:</strong> Sirius 6.3.1 includes a change in internal data structures used to store diagrams which is not backward-compatible with previous versions, including Sirius 6.3.0. In practice this means that once opened and saved with Sirius 6.3.1, 
+			<code>aird</code> files can no longer be opened with Sirius 6.3.0 or earlier.
+		</p>
 		<h3 id="UserVisibleChanges3">User-Visible Changes</h3>
 		<ul>
 			<li><span class="label label-success">Added</span> A new type of jump link has been added in Sirius 6.3.1. As reminder, a jump link is a way to graphically improve the way how 2 edges intersect. This new type is graphically represented by a blank line instead of the classical &#8220;jump&#8221;. This new type is documented in the 
@@ -296,7 +429,7 @@
 				<em>deprecated</em>. Their support may be removed in a future version, as they cause various issues depending on the platform and increase the maintenance costs for little value. If you really need diagram images in these formats, you can export in PNG (which is lossless), and convert the image into the required format using an external tool.
 			</li>
 		</ul>
-		<h3 id="SpecifierVisibleChanges">Specifier-Visible Changes</h3>
+		<h3 id="SpecifierVisibleChanges2">Specifier-Visible Changes</h3>
 		<ul>
 			<li><span class="label label-success">Added</span> A new column 
 				<code>Target</code> has been added in the dialog allowing to choose layout options to override for ELK layout algorithms. It describes the element to which the option applies. The filter textfield in that dialog also applies on columns&amp; 
@@ -310,7 +443,7 @@
 			<li><span class="label label-info">Modified</span> Upgraded ELK version from 0.4.1 to 0.5.0, see the <a href="https://projects.eclipse.org/projects/modeling.elk/releases/0.5.0" target="_blank">ELK documentation</a> for the list of changes in that version.</li>
 			<li><span class="label label-info">Modified</span> Upgraded EEF version from 2.1.2 to 2.1.3 (which contains a single bugfix, for <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=550436" target="_blank">#550436</a>).</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius2">Changes in  
 			<code>org.eclipse.sirius</code>
 		</h4>
 		<ul>
@@ -373,7 +506,7 @@
 				<code>DREPRESENTATION_DESCRIPTOR</code> has been removed because they are not available anymore in custom data.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.common2">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.common3">Changes in  
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -444,7 +577,7 @@
 		<p>There are no user-visible changes in Sirius 6.2.2 compared to 6.2.1. The only changes are internal and related either to the build process or to the automated tests.</p>
 		<h2 id="sirius6.2.1">Changes in Sirius 6.2.1</h2>
 		<h3 id="DeveloperVisibleChanges5">Developer-Visible Changes</h3>
-		<h4 id="Changesinorg.eclipse.sirius2">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius3">Changes in  
 			<code>org.eclipse.sirius</code>
 		</h4>
 		<ul>
@@ -471,7 +604,7 @@
 				<code>org.eclipse.sirius.business.api.helper.task.NotificationTask</code> class has been removed. It was not used anywhere.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui2">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui3">Changes in  
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -479,7 +612,7 @@
 				<code>org.eclipse.sirius.diagram.ui.business.api.image.ImageSelector.IMAGES_RESOURCE_NAME</code> constant has been deprecated. It was present in the initial commit of Sirius but has never been used in its open source components.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support2">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support">Changes in  
 			<code>org.eclipse.sirius.tests.swtbot.support</code>
 		</h4>
 		<ul>
@@ -512,14 +645,14 @@
 				<a href="user/sequences/Sequence%20Diagrams.html#remove_vertical_blank_space">feature</a> was here since version 6.0.0 but was only accessible through the ruler.
 			</li>
 		</ul>
-		<h3 id="SpecifierVisibleChanges2">Specifier-Visible Changes</h3>
+		<h3 id="SpecifierVisibleChanges3">Specifier-Visible Changes</h3>
 		<ul>
 			<li><span class="label label-success">Added</span> It is now possible to add action/group in the &#8220;New&#8221; contextual menu of diagram elements. This menu was missed in Sirius 6.1.0. It is now documented in the 
 				<a href="specifier/diagrams/Diagrams.html#group">corresponding documentation</a> .
 			</li>
 		</ul>
 		<h3 id="DeveloperVisibleChanges6">Developer-Visible Changes</h3>
-		<h4 id="Changesinorg.eclipse.sirius.common3">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.common4">Changes in 
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -796,7 +929,7 @@
 				</ul>
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui3">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui4">Changes in  
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -870,7 +1003,7 @@
 				<code>java.util.Optional&lt;T&gt;</code> instead.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support3">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support2">Changes in 
 			<code>org.eclipse.sirius.tests.swtbot.support</code>
 		</h4>
 		<ul>
@@ -901,7 +1034,7 @@
 				<code>org.eclipse.sirius.diagam.ui.hidePrintingOfPermissionAuthorityDecoration</code> system property is set to true and if there is no other printable decoration provided at the same location (South-West), the permission authority decorations displayed on diagrams are not printed nor exported in images (export as image actions).
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius3">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius4">Changes in  
 			<code>org.eclipse.sirius</code>
 		</h4>
 		<ul>
@@ -914,7 +1047,7 @@
 				<code>DRepresentationDescriptor.repPath</code> can not be found) or can not by retrieved.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui4">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui5">Changes in  
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -940,7 +1073,7 @@
 				<code>org.eclipse.sirius.diagram.ui.tools.api.decoration.DecorationDescriptor.isPrintable</code>. This attribute is used to know if the decoration should be hidden when printing or exporting the diagram. The behavior is applied only if there is no printable decoration in its diagram element location (South, West, South-West etc).
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.common4">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.common5">Changes in  
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -1005,7 +1138,7 @@
 				<a href="user/diagrams/Diagrams.html#notes">user documentation</a> for more details.
 			</li>
 		</ul>
-		<h3 id="SpecifierVisibleChanges3">Specifier-Visible Changes</h3>
+		<h3 id="SpecifierVisibleChanges4">Specifier-Visible Changes</h3>
 		<ul>
 			<li><span class="label label-success">Added</span> 
 				<a href="specifier/workflows/Workflows.html">Initial documentation</a> has been added for the &#8220;Workflow&#8221; feature introduced in 6.0.0 (which is still experimental).
@@ -1090,7 +1223,7 @@
 				<code>org.eclipse.sirius.business.internal.metamodel.description.validation.operations.ValidationRuleOperations</code> class.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.ui">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.ui2">Changes in 
 			<code>org.eclipse.sirius.ui</code>
 		</h4>
 		<ul>
@@ -1098,7 +1231,7 @@
 				<code>org.eclipse.sirius.ui.business.api.preferences.SiriusUIPreferencesKeys.PREF_DISPLAY_VSM_USER_FIXED_COLOR_IN_PALETTE</code> has been added. Its default value is true. It allows to display, in the color palette, the user fixed color(defined in the activated viewpoints) in addition to standard colors. The color palette is available in Appearance tab of the Properties view.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui5">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui6">Changes in 
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -1265,7 +1398,7 @@
 				<code>org.eclipse.sirius.ext.gmf.runtime.gef.ui.figures</code> package.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.common5">Changes in  
+		<h4 id="Changesinorg.eclipse.sirius.common6">Changes in  
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -1279,7 +1412,7 @@
 				<code>org.eclipse.emf.ecore.util.EcoreUtil.generateUUID()</code>.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support4">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support3">Changes in 
 			<code>org.eclipse.sirius.tests.swtbot.support</code>
 		</h4>
 		<ul>
@@ -1337,7 +1470,7 @@
 		<p>
 			<img border="0" src="images/color_palette.png"/>
 		</p>
-		<h3 id="SpecifierVisibleChanges4">Specifier-Visible Changes</h3>
+		<h3 id="SpecifierVisibleChanges5">Specifier-Visible Changes</h3>
 		<ul>
 			<li><span class="label label-success">Added</span> An action is added in main toolbar to reload the VSM of installed plug-ins that may have changed. Refer to the 
 				<a href="specifier/general/Specifying_Viewpoints.html#reloadVSM">specifier documentation</a> for details.
@@ -1402,7 +1535,7 @@
 				<code>SemanticBasedDecoration</code>.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.common6">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.common7">Changes in 
 			<code>org.eclipse.sirius.common</code>
 		</h4>
 		<ul>
@@ -1412,7 +1545,7 @@
 				<code>org.eclipse.sirius.common.tools.api.contentassist</code> which has its own types.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius4">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius5">Changes in 
 			<code>org.eclipse.sirius</code>
 		</h4>
 		<ul>
@@ -1495,7 +1628,7 @@
 				<code>org.eclipse.sirius.diagram.tools.api.managment</code>
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.diagram.ui6">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.diagram.ui7">Changes in 
 			<code>org.eclipse.sirius.diagram.ui</code>
 		</h4>
 		<ul>
@@ -1530,7 +1663,7 @@
 				<code>DDiagram</code>.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.ui2">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.ui3">Changes in 
 			<code>org.eclipse.sirius.ui</code>
 		</h4>
 		<ul>
@@ -1538,7 +1671,7 @@
 				<code>org.eclipse.sirius.ui.business.api.viewpoint.ViewpointSelectionDialog</code> has been removed.
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.junit.support">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.tests.junit.support2">Changes in 
 			<code>org.eclipse.sirius.tests.junit.support</code>
 		</h4>
 		<ul>
@@ -1551,7 +1684,7 @@
 				<code>org.eclipse.sirius.tests.swtbot.Activator.PLUGIN_ID</code>). It avoids to build a wrong target platform containing each Sirius plug-ins twice. 
 			</li>
 		</ul>
-		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support5">Changes in 
+		<h4 id="Changesinorg.eclipse.sirius.tests.swtbot.support4">Changes in 
 			<code>org.eclipse.sirius.tests.swtbot.support</code>
 		</h4>
 		<ul>
diff --git a/doc/developer/Sirius Developer Manual.html b/doc/developer/Sirius Developer Manual.html
index a10bf06..89e18ea 100644
--- a/doc/developer/Sirius Developer Manual.html
+++ b/doc/developer/Sirius Developer Manual.html
@@ -40,6 +40,11 @@
 							<strong>Representations lazy loading (experimental)</strong>
 						</a>
 					</li>
+					<li>
+						<a href="copy_paste_format_new_semantic.html">
+							<strong>Diagram Copy-Paste format on new semantic targets</strong>
+						</a>
+					</li>
 				</ul>
 			</li>
 			<li>The Sirius platform is extensible, and the next sections describe some common extension scenarios:
diff --git a/doc/developer/copy_paste_format_new_semantic.html b/doc/developer/copy_paste_format_new_semantic.html
new file mode 100644
index 0000000..7aff5fe
--- /dev/null
+++ b/doc/developer/copy_paste_format_new_semantic.html
@@ -0,0 +1,91 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+	<head>
+		<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+		<title>copy_paste_format_new_semantic</title>
+		<link type="text/css" rel="stylesheet" href="../resources/bootstrap.css"/>
+		<link type="text/css" rel="stylesheet" href="../resources/custom.css"/>
+	</head>
+	<body>
+		<h1 id="CopyPasteFormatonnewsemantictargets">Copy-Paste Format on new semantic targets</h1>
+		<p>The current copy-paste format (layout and style) between diagrams relies on semantic target elements to find out which target element (paste) matches the source element (copy).</p>
+		<p>This new API allows to perform this copy-paste format based on a semantic source to semantic target map. </p>
+		<h2 id="APIdetails">API details</h2>
+		<p>A new API in 
+			<code>org.eclipse.sirius.diagram.ui.tools.api.format.MappingBasedSiriusFormatManagerFactory</code> has been added to make it possible to apply a copy-paste format to an existing or a new diagram with different semantic targets.
+		</p>
+		<h3 id="Precondition">Precondition</h3>
+		<p>The target diagram should have the same description (same definition in the VSM) than the source one.</p>
+		<h3 id="Applythecopypastefromasourcediagramtoanexistingtargetdiagram">Apply the copy-paste from a source diagram to an existing target diagram</h3>
+		<pre> /**
+     * Apply format on {@code targetDiagram} based on the {@code sourceDiagram}. Format data are applied only for
+     * diagram elements whose semantic object is provided in the {@code correspondenceMap}.
+     * 
+     * Calls to this API shall be embedded in a command.
+     * 
+     * @param sourceSession
+     *            The {@link Session} for the source diagram. Must not be null.
+     * @param sourceDiagram
+     *            The source diagram. Must not be null.
+     * @param correspondenceMap
+     *            The mapping function between source diagram elements and target diagram elements Must not be null. In
+     *            the case where {@code sourceDiagram} is a Sequence diagram, must provide a mapping for each semantic
+     *            element of {@code sourceDiagram}.
+     * @param targetSession
+     *            The {@link Session} for the target diagram. Must not be null.
+     * @param targetDiagram
+     *            The target diagram. Must not be null.
+     * @param copyNotes
+     *            Whether or not to copy source diagram notes to target diagram.
+     * @return The target diagram.
+     */
+    public DDiagram applyFormatOnDiagram(Session sourceSession, DDiagram sourceDiagram, final Map&lt;EObject, EObject&gt; correspondenceMap, Session targetSession, DDiagram targetDiagram, boolean copyNotes) 
+
+</pre>
+		<p>This first method will perform the copy-paste format from a source diagram to an existing target diagram. The target elements on which the layout and style will be applied are retrieved by using the source-target correspondence map. </p>
+		<p>Note that if an element in the target diagram has no corresponding source element in the source diagram, this element will keep its current style and layout.</p>
+		<h3 id="Applythecopypastefromasourcediagramtoanewtargetdiagram">Apply the copy-paste from a source diagram to a new target diagram</h3>
+		<pre>    /**
+     * Apply format on a new {@link DDiagram} for name {@code targetDiagramName} based on the {@code sourceDiagram}.
+     * Format data are applied only for diagram elements whose semantic object is provided in the
+     * {@code correspondenceMap}.
+     * 
+     * Calls to this API shall be embedded in a command.
+     * 
+     * @param sourceSession
+     *            The {@link Session} for the source diagram. Must not be null.
+     * @param sourceDiagram
+     *            The source diagram. Must not be null.
+     * @param correspondenceMap
+     *            The mapping function between source diagram elements and target diagram elements. Must not be null. In
+     *            the case where {@code sourceDiagram} is a Sequence diagram, must provide a mapping for each semantic
+     *            element of {@code sourceDiagram}.
+     * @param targetSession
+     *            The {@link Session} for the target diagram. Must not be null.
+     * @param targetDiagramName
+     *            The target diagram name. Must not be null or equal to "".
+     * @param targetDiagramRoot
+     *            The root EObject for the new diagram. Must not be null.
+     * @param copyNotes
+     *            Whether or not to copy source diagram notes to target diagram.
+     * @return The created target diagram.
+     */
+    public DDiagram applyFormatOnNewDiagram(Session sourceSession, DDiagram sourceDiagram, final Map&lt;EObject, EObject&gt; correspondenceMap, Session targetSession, String targetDiagramName,
+            EObject targetDiagramRoot, boolean copyNotes)
+
+
+</pre>
+		<p>This method will create a new diagram, based on the correspondence map. The new diagram will be created only if the same source diagram description can be applied on the new semantic target. Once the new target diagram is created, the format from the source diagram is applied in the same way than the first method.</p>
+		<p>Only diagram elements for which an entry exists in the correspondence map will be created. If the new target diagram description has synchronized mapping (that means graphical elements are automatically created according to the mappings defined in  the VSM), new graphical elements might appear. If those new graphical elements semantic targets have no entry in the correspondence map, they will not be formatted and will keep their default style and layout.</p>
+		<h3 id="FiltersandLayers">Filters and Layers</h3>
+		<p>Filters and layers activated in the source diagram are automatically activated in the target diagram.</p>
+		<h3 id="Notes">Notes</h3>
+		<p>If this option is activated (
+			<code>copyNotes</code> parameter), existing notes in the source diagram are copied in the target diagram. If a note attachment exists in the source diagram, this one is also created in the target diagram, if the graphical target exists.
+		</p>
+		<h2 id="Sequencediagrams">Sequence diagrams</h2>
+		<p>The sequence diagram layout is linked to the semantic model: the vertical or horizontal graphical ordering perfectly match the semantic ordering. 
+			<br/>Because of this constraint, this feature can only be applied between sequence diagrams with a perfect match between their semantic models. That means the target semantic model, on which the existing target sequence diagram or the new one are based on, has to be the exact copy of the source semantic model. All target semantic elements have to be present in the corresponding map and all source semantic elements have to be present in the map.
+		</p>
+	</body>
+</html>
\ No newline at end of file
diff --git a/doc/index.html b/doc/index.html
index 719bd4d..d282cc6 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -109,7 +109,7 @@
     </div>
 
     <div class="clear"></div>
-    <p><em>Note:</em> This documentation refers to the latest major release of Sirius, version 6.3. For documentation corresponding to previous releases, see <a href="6.2.x/index.html">6.2.x</a>, <a href="6.1.x/index.html">6.1.x</a>, <a href="6.0.x/index.html">6.0.x</a>, <a href="5.1.x/index.html">5.1.x</a>, <a href="5.0.x/index.html">5.0.x</a>, <a href="4.1.x/index.html">4.1.x</a>, <a href="4.0.x/index.html">4.0.x</a>, <a href="3.1.x/index.html">3.1.x</a>, see <a href="3.0.x/index.html">3.0.x</a>, <a href="2.0.x/index.html">2.0.x</a>, <a href="1.0.x/index.html">1.0.x</a>, or <a href="0.9/index.html">0.9</a>.</p>
+	<p><em>Note:</em> This documentation refers to the latest major release of Sirius, version 6.4. For documentation corresponding to previous releases, see <a href="6.3.x/index.html">6.3.x</a>, <a href="6.2.x/index.html">6.2.x</a>, <a href="6.1.x/index.html">6.1.x</a>, <a href="6.0.x/index.html">6.0.x</a>, <a href="5.1.x/index.html">5.1.x</a>, <a href="5.0.x/index.html">5.0.x</a>, <a href="4.1.x/index.html">4.1.x</a>, <a href="4.0.x/index.html">4.0.x</a>, <a href="3.1.x/index.html">3.1.x</a>, see <a href="3.0.x/index.html">3.0.x</a>, <a href="2.0.x/index.html">2.0.x</a>, <a href="1.0.x/index.html">1.0.x</a>, or <a href="0.9/index.html">0.9</a>.</p>
     <div class="clear"></div>
     <p>For further information, please visit our website at <a href="http://www.eclipse.org/sirius/" target="_blank">www.eclipse.org/sirius</a>.</p>
   </body>
diff --git a/doc/specifier/diagrams/Diagrams.html b/doc/specifier/diagrams/Diagrams.html
index e84579b..3fb54e1 100644
--- a/doc/specifier/diagrams/Diagrams.html
+++ b/doc/specifier/diagrams/Diagrams.html
@@ -223,8 +223,27 @@
 		<p>NOTE: these layout algorithms manage only nodes connected by edges, other nodes are layouted from left to right as usual.</p>
 		<h4 id="useElk">Use an ELK layout algorithm</h4>
 		<p>Additional layout algorithms can be available if you have installed the ELK integration feature with Sirius. Please refers to the 
-			<a href="https://www.eclipse.org/elk/reference/algorithms.html">ELK documentation</a> if you want details about these algorithms. All these algorithms exclude pinned elements from the layouting and shorten edges between border nodes in addition to their core algorithm. 
+			<a href="https://www.eclipse.org/elk/reference/algorithms.html">ELK documentation</a> if you want details about these algorithms. This feature is considered as experimental because of remaining bugs concerning the ELK integration.
 		</p>
+		<p>When using one of the ELK layout algorithms, there are some specificities in comparison with the other &#8220;standard&#8221; Sirius layout:</p>
+		<ul>
+			<li>The pinned status is not considered. All pinned elements are layouted as if they are not pinned. ELK does not manage this kind of property and Sirius does not add post treatement that could break the layout result.</li>
+			<li>Arrange all : All elements are layouted. The top left coordinates of the bounding box of all elements is {20, 20} (same coordinates as the result of 
+				<a href="../../user/diagrams/Diagrams.html#reset_origin">
+					<em>Reset Origin</em>
+				</a> action action).
+				<ul>
+					<li>Even in case of scroll bars before the starting point of arrange all</li>
+				</ul>
+			</li>
+			<li>Arrange selection on one container: This action layouts all its content, resizes it to display its content but does not change its location.</li>
+			<li>Arrange selection on several elements on the same level: This action layouts elements in relation to each other but by ignoring other brothers. Overlap with other brothers, not selected ones, is possible. The top left coordinates of the bounding box of all elements remain the same.
+				<ul>
+					<li>If elements are containers: In addition to above behavior, their contents are layouted and  they are resized.</li>
+				</ul>
+			</li>
+			<li>Arrange selection on a container and some of its children: The result of this action is the same as launching an arrange selection only on the container.</li>
+		</ul>
 		<p>To use these algorithm, first install the feature: </p>
 		<p>
 			<img border="0" src="images/elkFeatureInstall.png"/>
@@ -240,10 +259,10 @@
 		<p>
 			<img border="0" src="images/elkOptionsDialog.png"/>
 		</p>
+		<p>Also you can filter the options by using the text field. The filtering applies to all columns except for the values.</p>
 		<p>To get an overview of what is possible with ELK you can read this 
 			<a href="https://blog.obeo.fr/a-picture-is-worth-a-thousand-words">article</a>.
 		</p>
-		<p>Also you can filter the options by using the text field. The filtering applies to all columns except for the values.</p>
 		<h4 id="Useacustomlayoutalgorithm">Use a custom layout algorithm</h4>
 		<p>If you need to go beyond what already exists, you can provide your own layout algorithm programmatically (see the 
 			<a href="../../developer/Sirius%20Developer%20Manual.html">developer documentation</a> for details).
diff --git a/doc/user/general/images/managing_representation1.png b/doc/user/general/images/managing_representation1.png
index 81aa0a1..a796094 100644
--- a/doc/user/general/images/managing_representation1.png
+++ b/doc/user/general/images/managing_representation1.png
Binary files differ
