Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPierre-Charles David2017-01-10 11:59:24 +0000
committerPierre-Charles David2017-01-16 08:49:41 +0000
commit08eb42ee9dd6a586529a2bcf668f10aebae5fc31 (patch)
tree01d6928a198cea643ff4b8b56ff2a6bde4b1d7a0
parent225c799704b82e9fd1c50ffb7125fc544b80a615 (diff)
downloadorg.eclipse.sirius-08eb42ee9dd6a586529a2bcf668f10aebae5fc31.tar.gz
org.eclipse.sirius-08eb42ee9dd6a586529a2bcf668f10aebae5fc31.tar.xz
org.eclipse.sirius-08eb42ee9dd6a586529a2bcf668f10aebae5fc31.zip
[508171] Add Sirius tutorial solutions as examples
Bug: 508171 Change-Id: I759397d9ab29796cd870ae18b42fb5af39c1cda4 Signed-off-by: Pierre-Charles David <pierre-charles.david@obeo.fr>
-rw-r--r--packaging/org.eclipse.sirius.parent/pom.xml3
-rw-r--r--plugins/org.eclipse.sirius.samples.family/build.properties23
-rw-r--r--plugins/org.eclipse.sirius.samples.family/plugin.xml50
-rw-r--r--plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/description/basicfamily.odesign17
-rw-r--r--plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/src/org/eclipse/sirius/sample/basicfamily/design/Activator.java16
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.classpath7
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.project24
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/META-INF/MANIFEST.MF16
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/build.properties7
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/description/basicfamily.odesign235
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/father.pngbin0 -> 204 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/man.svg668
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/mother.pngbin0 -> 196 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/woman.svg656
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.properties3
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.xml10
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml28
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Activator.java68
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Services.java48
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.classpath7
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.project24
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/META-INF/MANIFEST.MF15
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/build.properties7
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/description/basicfamily.odesign145
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/father.pngbin0 -> 204 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/man.svg668
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/mother.pngbin0 -> 196 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/woman.svg656
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.properties3
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.xml10
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml28
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Activator.java68
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Services.java27
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.classpath7
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.project24
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/META-INF/MANIFEST.MF15
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/build.properties18
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/description/basicfamily.odesign61
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/father.pngbin0 -> 204 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/man.svg668
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/mother.pngbin0 -> 196 bytes
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/woman.svg656
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.properties13
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.xml20
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml28
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Activator.java68
-rw-r--r--plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Services.java27
47 files changed, 5124 insertions, 18 deletions
diff --git a/packaging/org.eclipse.sirius.parent/pom.xml b/packaging/org.eclipse.sirius.parent/pom.xml
index 4829c393dc..9a041aecc4 100644
--- a/packaging/org.eclipse.sirius.parent/pom.xml
+++ b/packaging/org.eclipse.sirius.parent/pom.xml
@@ -360,6 +360,9 @@
<module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.edit</module>
<module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.editor</module>
<module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design</module>
+ <module>../../plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design</module>
+ <module>../../plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design</module>
+ <module>../../plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design</module>
<module>../../plugins/org.eclipse.sirius.samples.family</module>
<module>../../plugins/org.eclipse.sirius.common.interpreter</module>
diff --git a/plugins/org.eclipse.sirius.samples.family/build.properties b/plugins/org.eclipse.sirius.samples.family/build.properties
index dfbf5ce9ed..310aae3cfd 100644
--- a/plugins/org.eclipse.sirius.samples.family/build.properties
+++ b/plugins/org.eclipse.sirius.samples.family/build.properties
@@ -12,6 +12,7 @@ bin.includes = META-INF/,\
.,\
plugin.xml,\
samples/,\
+ solutions/,\
icons/,\
plugin.properties,\
about.html
@@ -26,7 +27,16 @@ bin.excludes = samples/org.eclipse.sirius.sample.basicfamily/bin/,\
samples/org.eclipse.sirius.sample.basicfamily.editor/pom.xml,\
samples/org.eclipse.sirius.sample.basicfamily.design/bin/,\
samples/org.eclipse.sirius.sample.basicfamily.design/target/,\
- samples/org.eclipse.sirius.sample.basicfamily.design/pom.xml
+ samples/org.eclipse.sirius.sample.basicfamily.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml
src.includes = samples/
src.excludes = samples/org.eclipse.sirius.sample.basicfamily/bin/,\
samples/org.eclipse.sirius.sample.basicfamily/target/,\
@@ -39,4 +49,13 @@ src.excludes = samples/org.eclipse.sirius.sample.basicfamily/bin/,\
samples/org.eclipse.sirius.sample.basicfamily.editor/pom.xml,\
samples/org.eclipse.sirius.sample.basicfamily.design/bin/,\
samples/org.eclipse.sirius.sample.basicfamily.design/target/,\
- samples/org.eclipse.sirius.sample.basicfamily.design/pom.xml
+ samples/org.eclipse.sirius.sample.basicfamily.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/bin/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/target/,\
+ solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml
diff --git a/plugins/org.eclipse.sirius.samples.family/plugin.xml b/plugins/org.eclipse.sirius.samples.family/plugin.xml
index a3014d5065..e9856f593f 100644
--- a/plugins/org.eclipse.sirius.samples.family/plugin.xml
+++ b/plugins/org.eclipse.sirius.samples.family/plugin.xml
@@ -46,6 +46,34 @@
project="true">
<description>A sample graphical modeler to view an edit family models (requires the Basic Family Metamodel Definition to be installed).</description>
</wizard>
+
+ <wizard category="org.eclipse.ui.Examples/org.eclipse.sirius.samples.category"
+ class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
+ icon="icons/Family.gif"
+ id="org.eclipse.sirius.samples.family.NewBasicFamilyStarterTutorialSolution"
+ name="Basic Family Modeler Definition - Starter Tutorial Solution"
+ project="true">
+ <description>A sample graphical modeler to view an edit family models. Corresponds to the solution of the Sirius Starter Tutorial.</description>
+ </wizard>
+
+ <wizard category="org.eclipse.ui.Examples/org.eclipse.sirius.samples.category"
+ class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
+ icon="icons/Family.gif"
+ id="org.eclipse.sirius.samples.family.NewBasicFamilyAdvancedTutorialSolution"
+ name="Basic Family Modeler Definition - Advanced Tutorial Solution"
+ project="true">
+ <description>A sample graphical modeler to view an edit family models. Corresponds to the solution of the Sirius Advanced Tutorial.</description>
+ </wizard>
+
+ <wizard category="org.eclipse.ui.Examples/org.eclipse.sirius.samples.category"
+ class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard"
+ icon="icons/Family.gif"
+ id="org.eclipse.sirius.samples.family.NewBasicFamilyCompartmentsTutorialSolution"
+ name="Basic Family Modeler Definition - Compartments Tutorial Solution"
+ project="true">
+ <description>A sample graphical modeler to view an edit family models. Corresponds to the solution of the Sirius Compartments Tutorial.</description>
+ </wizard>
+
</extension>
<extension point="org.eclipse.emf.common.ui.examples">
@@ -78,6 +106,28 @@
contentURI="samples/org.eclipse.sirius.sample.basicfamily.design/"
description="A sample graphical modeler to view and edit family models."/>
</example>
+
+ <!-- Brings down VSP with the starter tutorial solution -->
+ <example wizardID="org.eclipse.sirius.samples.family.NewBasicFamilyStarterTutorialSolution">
+ <projectDescriptor name="org.eclipse.sirius.sample.basicfamily.starter.design"
+ contentURI="solutions/org.eclipse.sirius.sample.basicfamily.starter.design/"
+ description="Solution of the Basic Family Starter Tutorial"/>
+ </example>
+
+ <!-- Brings down VSP with the advanced tutorial solution -->
+ <example wizardID="org.eclipse.sirius.samples.family.NewBasicFamilyAdvancedTutorialSolution">
+ <projectDescriptor name="org.eclipse.sirius.sample.basicfamily.advanced.design"
+ contentURI="solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/"
+ description="Solution of the Basic Family Advanced Tutorial"/>
+ </example>
+
+ <!-- Brings down VSP with the compartments tutorial solution -->
+ <example wizardID="org.eclipse.sirius.samples.family.NewBasicFamilyCompartmentsTutorialSolution">
+ <projectDescriptor name="org.eclipse.sirius.sample.basicfamily.compartments.design"
+ contentURI="solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/"
+ description="Solution of the Basic Family Compartments Tutorial"/>
+ </example>
+
</extension>
</plugin>
diff --git a/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/description/basicfamily.odesign b/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/description/basicfamily.odesign
index f876d28044..c3f5bc200e 100644
--- a/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/description/basicfamily.odesign
+++ b/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/description/basicfamily.odesign
@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
-<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="basicfamily" version="8.1.0">
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="basicfamily" version="11.1.1.201610211630">
<ownedViewpoints name="persons" modelFileExtension="basicfamily">
<ownedRepresentations xsi:type="description_1:DiagramDescription" name="Persons diagram" domainClass="basicfamily.Family">
<defaultLayer name="Default">
<nodeMappings name="ManNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Man">
- <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</style>
</nodeMappings>
<nodeMappings name="WomanNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Woman">
- <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
<borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
<labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
</style>
@@ -43,6 +43,17 @@
</firstModelOperations>
</initialOperation>
</ownedTools>
+ <ownedTools xsi:type="tool:NodeCreationDescription" name="createWoman" nodeMappings="//@ownedViewpoints[name='persons']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool_1:CreateInstance" typeName="basicfamily.Woman" referenceName="members">
+ <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'woman'+container.members->filter(basicfamily::Woman)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
</toolSections>
</defaultLayer>
</ownedRepresentations>
diff --git a/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/src/org/eclipse/sirius/sample/basicfamily/design/Activator.java b/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/src/org/eclipse/sirius/sample/basicfamily/design/Activator.java
index 458c73ca24..fbc85cd7ef 100644
--- a/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/src/org/eclipse/sirius/sample/basicfamily/design/Activator.java
+++ b/plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design/src/org/eclipse/sirius/sample/basicfamily/design/Activator.java
@@ -1,5 +1,5 @@
/**
- * Copyright (c) 2014 Obeo
+ * Copyright (c) 2014, 2017 Obeo
* 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
@@ -36,12 +36,7 @@ public class Activator extends AbstractUIPlugin {
public Activator() {
}
- /*
- * (non-Javadoc)
- * @see
- * org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext
- * )
- */
+ @Override
public void start(BundleContext context) throws Exception {
super.start(context);
plugin = this;
@@ -49,12 +44,7 @@ public class Activator extends AbstractUIPlugin {
viewpoints.addAll(ViewpointRegistry.getInstance().registerFromPlugin(PLUGIN_ID + "/description/basicfamily.odesign"));
}
- /*
- * (non-Javadoc)
- * @see
- * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
- * )
- */
+ @Override
public void stop(BundleContext context) throws Exception {
plugin = null;
if (viewpoints != null) {
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.classpath b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.classpath
new file mode 100644
index 0000000000..39810b7d6c
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.project b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.project
new file mode 100644
index 0000000000..d873f807c3
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/.project
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.sirius.sample.basicfamily.advanced.design</name>
+ <comment></comment>
+ <projects></projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/META-INF/MANIFEST.MF b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..9fd22e863b
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.sirius.sample.basicfamily.advanced.design;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.sirius.sample.basicfamily.advanced.design.Activator
+Bundle-Localization: plugin
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.sirius,
+ org.eclipse.sirius.common.acceleo.aql,
+ org.eclipse.sirius.sample.basicfamily;bundle-version="1.0.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-Vendor: %providerName
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/build.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/build.properties
new file mode 100644
index 0000000000..1ab7df2cb6
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/build.properties
@@ -0,0 +1,7 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ description/,\
+ plugin.properties,\
+ plugin.xml
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/description/basicfamily.odesign b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/description/basicfamily.odesign
new file mode 100644
index 0000000000..2c5faf52e8
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/description/basicfamily.odesign
@@ -0,0 +1,235 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:description_2="http://www.eclipse.org/sirius/table/description/1.1.0" xmlns:filter="http://www.eclipse.org/sirius/diagram/description/filter/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:validation="http://www.eclipse.org/sirius/description/validation/1.1.0" name="basicfamily" version="11.1.1.201610211630">
+ <ownedViewpoints name="persons (Basic Family Advanced Tutorial Solution)" modelFileExtension="basicfamily">
+ <ownedRepresentations xsi:type="description_1:DiagramDescription" name="Persons diagram" domainClass="basicfamily.Family">
+ <metamodel href="http://www.eclipse.org/sirius/sample/basicfamily#/"/>
+ <filters xsi:type="filter:CompositeFilterDescription" name="childrenFilter">
+ <filters xsi:type="filter:MappingFilter" mappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']" semanticConditionExpression="aql:self.children->size()>0"/>
+ </filters>
+ <validationSet name="FamilyValidation">
+ <ownedRules xsi:type="validation:SemanticValidationRule" name="NoFatherChildren" level="ERROR" message="aql:self.oclAsType(basicfamily::Person).father.name+' should not be both the child and the father of '+self.oclAsType(basicfamily::Person).name" targetClass="basicfamily.Person">
+ <audits auditExpression="aql:self.children->excludes(self.father)"/>
+ <fixes name="Unset father">
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:Unset" featureName="father"/>
+ </initialOperation>
+ </fixes>
+ </ownedRules>
+ </validationSet>
+ <defaultLayer name="Default">
+ <toolSections name="Tools">
+ <ownedTools xsi:type="tool_1:DirectEditLabel" name="editName">
+ <mask mask="{0}"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:SetValue" featureName="name" valueExpression="var:0"/>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:DoubleClickDescription" name="PersonDoubleClick" mappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']/@defaultLayer/@containerMappings[name='PersonContainer']/@subNodeMappings[name='ChildrenNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']/@defaultLayer/@containerMappings[name='PersonContainer']/@borderedNodeMappings[name='ParentNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']/@defaultLayer/@containerMappings[name='SiblingContainer']/@subNodeMappings[name='SiblingNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']">
+ <element name="element"/>
+ <elementView name="elementView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:Navigation" createIfNotExistent="true" diagramDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']"/>
+ </initialOperation>
+ </ownedTools>
+ </toolSections>
+ <customization>
+ <vsmElementCustomizations xsi:type="description:VSMElementCustomization" predicateExpression="aql:self.oclAsType(basicfamily::Person).children->size()=0">
+ <featureCustomizations xsi:type="description:EReferenceCustomization" appliedOn="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode']/@style //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']/@style" referenceName="labelColor">
+ <value href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </featureCustomizations>
+ </vsmElementCustomizations>
+ <vsmElementCustomizations xsi:type="description:VSMElementCustomization" predicateExpression="aql:self.oclAsType(basicfamily::Person).children->size()>1">
+ <featureCustomizations xsi:type="description:EAttributeCustomization" appliedOn="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode']/@style //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']/@style" attributeName="labelSize" value="12"/>
+ </vsmElementCustomizations>
+ <vsmElementCustomizations xsi:type="description:VSMElementCustomization" predicateExpression="aql:self.oclAsType(basicfamily::Person).children.children->size()>0">
+ <featureCustomizations xsi:type="description:EAttributeCustomization" appliedOn="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode']/@style" attributeName="labelExpression" value="aql:'Grandpa '+self.oclAsType(basicfamily::Person).name"/>
+ <featureCustomizations xsi:type="description:EAttributeCustomization" appliedOn="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']/@style" attributeName="labelExpression" value="aql:'Grandma '+self.oclAsType(basicfamily::Person).name"/>
+ </vsmElementCustomizations>
+ </customization>
+ </defaultLayer>
+ <additionalLayers name="Men" activeByDefault="true">
+ <nodeMappings name="ManNode" labelDirectEdit="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='editName']" doubleClickDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='PersonDoubleClick']" domainClass="basicfamily.Man">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <edgeMappings name="fatherEdge" deletionDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@toolSections.0/@ownedTools[name='unsetFather']" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode']" targetFinderExpression="feature:father" reconnections="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@toolSections.0/@ownedTools[name='reconnectFather']">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <toolSections name="Tools">
+ <ownedTools xsi:type="tool_1:NodeCreationDescription" name="createMan" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool:CreateInstance" typeName="basicfamily.Man" referenceName="members">
+ <subModelOperations xsi:type="tool:SetValue" featureName="name" valueExpression="aql:'man'+container.members->filter(basicfamily::Man)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:EdgeCreationDescription" name="setFather" precondition="aql:preTarget.differs(preSource) and preSource.oclAsType(basicfamily::Person).children->excludes(preTarget)" edgeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@edgeMappings[name='fatherEdge']" iconPath="/org.eclipse.sirius.sample.basicfamily.design/icons/father.png">
+ <sourceVariable name="source"/>
+ <targetVariable name="target"/>
+ <sourceViewVariable name="sourceView"/>
+ <targetViewVariable name="targetView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:source">
+ <subModelOperations xsi:type="tool:SetValue" featureName="father" valueExpression="var:target"/>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:ReconnectEdgeDescription" name="reconnectFather">
+ <source name="source"/>
+ <target name="target"/>
+ <sourceView name="sourceView"/>
+ <targetView name="targetView"/>
+ <element name="element"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:element">
+ <subModelOperations xsi:type="tool:SetValue" featureName="father" valueExpression="var:target"/>
+ </firstModelOperations>
+ </initialOperation>
+ <edgeView name="edgeView"/>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:DeleteElementDescription" name="unsetFather">
+ <element name="element"/>
+ <elementView name="elementView"/>
+ <containerView name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:Unset" featureName="father"/>
+ </initialOperation>
+ </ownedTools>
+ </toolSections>
+ </additionalLayers>
+ <additionalLayers name="Women" activeByDefault="true">
+ <nodeMappings name="WomanNode" labelDirectEdit="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='editName']" semanticCandidatesExpression="feature:members" doubleClickDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='PersonDoubleClick']" domainClass="basicfamily.Woman">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <edgeMappings name="motherEdge" deletionDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@toolSections.0/@ownedTools[name='unsetMother']" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Men']/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']" targetFinderExpression="feature:mother" reconnections="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@toolSections.0/@ownedTools[name='reconnectMother']">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='purple']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <toolSections name="Tools">
+ <ownedTools xsi:type="tool_1:NodeCreationDescription" name="createWoman" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@nodeMappings[name='WomanNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool:CreateInstance" typeName="basicfamily.Woman" referenceName="members">
+ <subModelOperations xsi:type="tool:SetValue" featureName="name" valueExpression="aql:'woman'+container.members->filter(basicfamily::Woman)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:EdgeCreationDescription" name="setMother" precondition="aql:preTarget.differs(preSource) and preSource.oclAsType(basicfamily::Person).children->excludes(preTarget)" edgeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@additionalLayers[name='Women']/@edgeMappings[name='motherEdge']" iconPath="/org.eclipse.sirius.sample.basicfamily.design/icons/mother.png">
+ <sourceVariable name="source"/>
+ <targetVariable name="target"/>
+ <sourceViewVariable name="sourceView"/>
+ <targetViewVariable name="targetView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:source">
+ <subModelOperations xsi:type="tool:SetValue" featureName="mother" valueExpression="var:target"/>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:ReconnectEdgeDescription" name="reconnectMother">
+ <source name="source"/>
+ <target name="target"/>
+ <sourceView name="sourceView"/>
+ <targetView name="targetView"/>
+ <element name="element"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:ChangeContext" browseExpression="var:element">
+ <subModelOperations xsi:type="tool:SetValue" featureName="mother" valueExpression="var:target"/>
+ </firstModelOperations>
+ </initialOperation>
+ <edgeView name="edgeView"/>
+ </ownedTools>
+ <ownedTools xsi:type="tool_1:DeleteElementDescription" name="unsetMother">
+ <element name="element"/>
+ <elementView name="elementView"/>
+ <containerView name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool:Unset" featureName="mother"/>
+ </initialOperation>
+ </ownedTools>
+ </toolSections>
+ </additionalLayers>
+ </ownedRepresentations>
+ <ownedRepresentations xsi:type="description_1:DiagramDescription" name="Relationships diagram" titleExpression="aql:'Relations of '+self.name" domainClass="basicfamily.Person">
+ <metamodel href="http://www.eclipse.org/sirius/sample/basicfamily#/"/>
+ <defaultLayer name="Default">
+ <edgeMappings name="SiblingsEdge" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']/@defaultLayer/@containerMappings[name='PersonContainer']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Relationships%20diagram']/@defaultLayer/@containerMappings[name='SiblingContainer']" targetFinderExpression="var:self">
+ <style sourceArrow="OutputFillClosedArrow" targetArrow="OutputFillClosedArrow" sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <containerMappings name="PersonContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="List">
+ <borderedNodeMappings name="ParentNode" semanticCandidatesExpression="feature:parents" doubleClickDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='PersonDoubleClick']" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" labelPosition="node" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ </style>
+ </borderedNodeMappings>
+ <subNodeMappings name="ChildrenNode" semanticCandidatesExpression="feature:children" doubleClickDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='PersonDoubleClick']" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" labelSize="12">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_green']"/>
+ </style>
+ </containerMappings>
+ <containerMappings name="SiblingContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="List">
+ <subNodeMappings name="SiblingNode" semanticCandidatesExpression="aql:self.parents.children->excluding(self)" doubleClickDescription="//@ownedViewpoints[name='persons%20(Basic%20Family%20Advanced%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@toolSections.0/@ownedTools[name='PersonDoubleClick']" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" labelSize="10" labelExpression="Siblings">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_yellow']"/>
+ </style>
+ </containerMappings>
+ </defaultLayer>
+ </ownedRepresentations>
+ <ownedRepresentations xsi:type="description_2:EditionTableDescription" name="Persons table" domainClass="basicfamily.Family">
+ <metamodel href="http://www.eclipse.org/sirius/sample/basicfamily#/"/>
+ <ownedLineMappings name="PersonLine" domainClass="basicfamily.Person" semanticCandidatesExpression="feature:members" headerLabelExpression="feature:name"/>
+ <ownedColumnMappings name="fatherCol" headerLabelExpression="Father" featureName="father" labelExpression="aql:self.father.name"/>
+ <ownedColumnMappings name="motherCol" headerLabelExpression="Mother" featureName="mother" labelExpression="aql:self.mother.name"/>
+ <ownedColumnMappings name="childrenCol" headerLabelExpression="Children" featureName="children" labelExpression="aql:self.children->size()"/>
+ <ownedColumnMappings name="cousinsCol" headerLabelExpression="Cousins" featureName="parents" labelExpression="service:getCousinsNumber()"/>
+ </ownedRepresentations>
+ <ownedJavaExtensions qualifiedClassName="org.eclipse.sirius.sample.basicfamily.advanced.design.Services"/>
+ </ownedViewpoints>
+</description:Group>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/father.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/father.png
new file mode 100644
index 0000000000..a82ae04cdd
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/father.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/man.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/man.svg
new file mode 100644
index 0000000000..ca6b64d15d
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/man.svg
@@ -0,0 +1,668 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.12059"
+ height="255.1181"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="man.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="99.7399"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="37"
+ inkscape:window-y="105"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-408.15524,-46.324276)">
+ <g
+ id="g19649"
+ transform="matrix(1,0,0,0.96598873,40,55.864721)"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_16.png"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-ydpi="5.6444445">
+ <g
+ id="g19911"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_32.png"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-ydpi="11.28878">
+ <path
+ id="path8747-8-7"
+ style="fill:url(#linearGradient19660);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 567.90313,185.53891 c -33.4352,-12.1813 -44.12152,-26.51434 -44.12152,-48.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.99707 10.8876,-0.16818 12.61788,-23.102434 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942542 1.1931,-13.02136 -7.48529,-46.45689 -53.92547,-46.45689 -46.43139,0 -55.14332,33.43553 -53.92505,46.45689 0.97417,10.4171 3.50296,23.942542 3.50296,23.942542 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934384 10.74503,13.105364 12.61833,23.102434 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,36.34341 -44.12992,48.52471 -33.56983,12.26528 -55.37016,20.69861 -55.37016,29.18353 0,8.48484 0,39.50171 0,39.50171 l 255.11809,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-16.91825 -55.3702,-29.18353"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csccccsccccscsccsc" />
+ <path
+ id="path8747-2-2"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 531.90313,163.5389 c 15.92247,21.6274 91.87528,34.36486 91.3702,51.18354 -0.12735,4.24051 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.11809,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 80.77,-32.38606 91.37017,-51.18354 25.36834,23.52394 51.15632,22.62639 72.37772,0 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssccsscc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient19662);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path15558-1"
+ sodipodi:cx="171.22086"
+ sodipodi:cy="85.898735"
+ sodipodi:rx="47.982246"
+ sodipodi:ry="67.427681"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ transform="matrix(1,0,0,1.0773453,323.06636,-19.92)" />
+ <path
+ style="fill:#493225;fill-opacity:1;stroke:none"
+ d="m 445.78938,73.769474 c 1.31756,-1.756746 -0.79399,-0.315053 -3.39632,-5.612402 C 438.74122,50.294047 428.99625,15.0747 459.43694,-1.732 c 47.76132,-22.78746 92.04457,5.0573029 90.19329,48.64577 -1.76788,16.170177 -1.34166,19.523769 -8.75345,27.926388 1.65191,-2.145951 -5.96808,-36.444157 -13.79781,-44.898176 -10.1635,-10.97387 -7.09096,0.387162 -8.1605,-1.392307 -3.64784,-6.069137 -7.61704,-9.246016 -11.73967,-11.042003 0.48194,6.653529 1.60809,13.544249 -0.28073,10.245671 -3.21674,-5.617618 -23.25719,-14.519286 -18.83286,-9.295438 2.80224,3.308629 4.09372,12.2227 3.05381,10.843939 -7.6944,-10.201575 -20.94634,-6.037529 -25.68243,-4.531289 -7.98586,3.520797 -9.43386,-1.835007 -7.57578,23.703051 -4.21302,4.266354 -10.70103,21.991886 -12.07143,25.295868 z"
+ id="path15556-1"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccsscsssccc" />
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ d="m 532.96732,163.5389 c 10.07764,22.45347 90.29857,26.00795 90.30601,49.18341 l 0,41.12373 -255.11809,0.001 0,-41.12473 c 0.35714,-17.41349 75.80033,-25.13266 89.37017,-49.18367 14.01254,26.26353 22.5624,42.66513 35.66919,69.60296 3.01312,3.95605 2.02625,5.07735 5.03937,0"
+ style="fill:#56a6d1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path19619" />
+ </g>
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/mother.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/mother.png
new file mode 100644
index 0000000000..2650305dc7
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/mother.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/woman.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/woman.svg
new file mode 100644
index 0000000000..c55b2641a9
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/icons/woman.svg
@@ -0,0 +1,656 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.11809"
+ height="255.11812"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="woman.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="-681.7745"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="19"
+ inkscape:window-y="75"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-72.440952,-46.324275)">
+ <g
+ id="g19643-7-4"
+ transform="matrix(1,0,0,0.96450955,27.857144,56.240766)"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/woman_32.png"
+ inkscape:export-xdpi="11.288889"
+ inkscape:export-ydpi="11.288889">
+ <path
+ sodipodi:nodetypes="csccccsccccscsccsc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.53891 c -33.4352,-12.1813 -44.12152,-22.51434 -44.12152,-44.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.997069 10.8876,-0.16818 12.61788,-23.102435 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942545 1.1931,-13.021361 -7.48529,-46.45688888 -53.92547,-46.45688888 -46.43139,0 -55.14332,33.43552788 -53.92505,46.45688888 0.97417,10.417103 3.50296,23.942545 3.50296,23.942545 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934385 10.74503,13.105366 12.61833,23.102435 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,32.34341 -44.129922,44.52471 -33.56983,12.26528 -55.37016,24.69861 -55.37016,33.18353 0,8.48484 0,39.50171 0,39.50171 l 255.118092,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-20.91825 -55.3702,-33.18353"
+ style="fill:url(#radialGradient19664-7-1);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-8-0-8" />
+ <path
+ sodipodi:nodetypes="cssccssccccc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.5389 c 33.56985,12.26529 55.3702,24.69862 55.3702,33.18354 0,4.24242 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.118092,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 21.80033,-20.91825 55.37017,-33.18354 l 54.125912,11.66324 13.54328,42.64516 9.03937,-0.1542 13.54325,-42.49096"
+ style="fill:#cf118a;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-2-4-7" />
+ <path
+ transform="matrix(1,0,0,1.0773453,-0.50507627,-19.919998)"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ sodipodi:ry="67.427681"
+ sodipodi:rx="47.982246"
+ sodipodi:cy="85.898735"
+ sodipodi:cx="171.22086"
+ id="path15558-4-5"
+ style="fill:url(#radialGradient19666-0-0);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:nodetypes="ccssscccccccc"
+ inkscape:connector-curvature="0"
+ id="path15556-5-4"
+ d="m 146.22702,136.27638 c 4.39007,20.43373 -32.31132,49.76818 -46.233493,33.72347 17.652453,-5.96556 28.866283,-34.62337 22.243603,-25.23444 -3.97589,5.6366 -24.168914,23.13372 -19.12935,13.5085 10.13551,-19.35813 14.01626,-50.06876 8.74431,-75.856506 -3.65184,-17.863028 -6.42727,-67.342708 24.01342,-84.1494025 47.76132,-22.7874615 88.90171,2.20015811 94.19329,48.6457695 2.07368,83.068069 -17.38327,88.572649 6.05927,124.782889 -17.28308,5.20692 -41.12899,-7.1673 -35.812,-38.22667 5.75735,-16.49554 6.85668,-15.07625 8.02973,-39.170423 -11.4533,-35.688339 -58.70475,-17.853611 -66.84809,-81.18674 -0.49637,12.305788 -2.51072,26.510542 -15.29986,46.49276 -2.69779,46.692763 7.77251,66.295743 20.03917,76.670793 z"
+ style="fill:#493225;fill-opacity:1;stroke:none" />
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="/Volumes/partage/private/marketing/Design/Produits/Sirius/png/man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.properties
new file mode 100644
index 0000000000..27429ff8d4
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.properties
@@ -0,0 +1,3 @@
+pluginName = org.eclipse.sirius.sample.basicfamily.advanced.design
+providerName = Eclipse Modeling Project
+viewpointName = MyViewpoint
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.xml
new file mode 100644
index 0000000000..3b82be5f62
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/plugin.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension point="org.eclipse.sirius.componentization">
+ <component class="org.eclipse.sirius.sample.basicfamily.advanced.design.Activator"
+ id="org.eclipse.sirius.sample.basicfamily.advanced.design"
+ name="basicfamily">
+ </component>
+ </extension>
+</plugin>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml
new file mode 100644
index 0000000000..eda5ca1502
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2017 Obeo
+ 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:
+ Obeo - Initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.sirius</groupId>
+ <artifactId>sirius-parent</artifactId>
+ <version>4.1.3-SNAPSHOT</version>
+ <relativePath>../../../../packaging/org.eclipse.sirius.parent</relativePath>
+ </parent>
+
+ <artifactId>org.eclipse.sirius.sample.basicfamily.advanced.design</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <version>1.0.0-SNAPSHOT</version>
+
+</project>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Activator.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Activator.java
new file mode 100644
index 0000000000..d635d58c07
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Activator.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2014, 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.advanced.design;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.sirius.business.api.componentization.ViewpointRegistry;
+import org.eclipse.sirius.viewpoint.description.Viewpoint;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.sirius.sample.basicfamily.advanced.design";
+
+ // The shared instance
+ private static Activator plugin;
+
+ private static Set<Viewpoint> viewpoints;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ viewpoints = new HashSet<Viewpoint>();
+ viewpoints.addAll(ViewpointRegistry.getInstance().registerFromPlugin(PLUGIN_ID + "/description/basicfamily.odesign"));
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ if (viewpoints != null) {
+ for (final Viewpoint viewpoint : viewpoints) {
+ ViewpointRegistry.getInstance().disposeFromPlugin(viewpoint);
+ }
+ viewpoints.clear();
+ viewpoints = null;
+ }
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+}
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Services.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Services.java
new file mode 100644
index 0000000000..98de234ed1
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.advanced.design/src/org/eclipse/sirius/sample/basicfamily/advanced/design/Services.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.advanced.design;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.sirius.sample.basicfamily.Person;
+
+/**
+ * The services class used by VSM.
+ */
+public class Services {
+
+ /**
+ * See
+ * http://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.sirius.doc%
+ * 2Fdoc%2Findex.html&cp=24 for documentation on how to write service
+ * methods.
+ */
+ public int getCousinsNumber(Person person) {
+ List<Person> cousins = new ArrayList<Person>();
+ List<Person> parents = person.getParents();
+
+ for (Person parent : parents) {
+ for (Person grandParent : parent.getParents()) {
+ for (Person uncleOrAunt : grandParent.getChildren()) {
+ if (!parents.contains(uncleOrAunt)) {
+ for (Person cousin : uncleOrAunt.getChildren()) {
+ if (!cousins.contains(cousin))
+ cousins.add(cousin);
+ }
+ }
+ }
+ }
+ }
+ return cousins.size();
+ }
+
+}
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.classpath b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.classpath
new file mode 100644
index 0000000000..39810b7d6c
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.project b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.project
new file mode 100644
index 0000000000..d20d3e9a87
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/.project
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.sirius.sample.basicfamily.compartments.design</name>
+ <comment></comment>
+ <projects></projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/META-INF/MANIFEST.MF b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..e479f7954a
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.sirius.sample.basicfamily.compartments.design;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.sirius.sample.basicfamily.compartments.design.Activator
+Bundle-Localization: plugin
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.sirius,
+ org.eclipse.sirius.common.acceleo.aql
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-Vendor: %providerName
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/build.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/build.properties
new file mode 100644
index 0000000000..1ab7df2cb6
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/build.properties
@@ -0,0 +1,7 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ description/,\
+ plugin.properties,\
+ plugin.xml
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/description/basicfamily.odesign b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/description/basicfamily.odesign
new file mode 100644
index 0000000000..862d0e71dd
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/description/basicfamily.odesign
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="basicfamily" version="11.1.1.201610211630">
+ <ownedViewpoints name="persons (Basic Family Compartments Tutorial Solution)" modelFileExtension="basicfamily">
+ <ownedRepresentations xsi:type="description_1:DiagramDescription" name="Persons diagram" domainClass="basicfamily.Family">
+ <defaultLayer name="Default">
+ <nodeMappings name="ManNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Man">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <nodeMappings name="WomanNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Woman">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <edgeMappings name="fatherEdge" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode']" targetFinderExpression="feature:father">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <edgeMappings name="motherEdge" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetFinderExpression="feature:mother">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='purple']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <toolSections name="Tools">
+ <ownedTools xsi:type="tool:NodeCreationDescription" name="createMan" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool_1:CreateInstance" typeName="basicfamily.Man" referenceName="members">
+ <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'man'+container.members->filter(basicfamily::Man)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool:NodeCreationDescription" name="createWoman" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Compartments%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool_1:CreateInstance" typeName="basicfamily.Woman" referenceName="members">
+ <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'woman'+container.members->filter(basicfamily::Woman)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ </toolSections>
+ </defaultLayer>
+ </ownedRepresentations>
+ <ownedRepresentations xsi:type="description_1:DiagramDescription" name="Person details diagram" titleExpression="aql:'Relations of '+self.name" domainClass="basicfamily.Person">
+ <defaultLayer name="Default">
+ <containerMappings name="PersonContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="HorizontalStack">
+ <subContainerMappings name="ParentsContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="List">
+ <subNodeMappings name="ParentNode" semanticCandidatesExpression="aql:self.parents" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" labelSize="12" showIcon="false" labelExpression="Parents">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_blue']"/>
+ </style>
+ </subContainerMappings>
+ <subContainerMappings name="SiblingContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="List">
+ <subNodeMappings name="SiblingNode" semanticCandidatesExpression="aql:self.parents.children->excluding(self)" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" labelSize="12" showIcon="false" labelExpression="Siblings">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_green']"/>
+ </style>
+ </subContainerMappings>
+ <subContainerMappings name="ChildrenContainer" semanticCandidatesExpression="var:self" domainClass="basicfamily.Person" childrenPresentation="List">
+ <subNodeMappings name="ChildrenNode" semanticCandidatesExpression="feature:children" domainClass="basicfamily.Person">
+ <style xsi:type="style:SquareDescription" resizeKind="NSEW">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <color xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='gray']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" arcWidth="1" arcHeight="1" borderSizeComputationExpression="1" labelSize="12" showIcon="false" labelExpression="Children">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='yellow']"/>
+ </style>
+ </subContainerMappings>
+ <subContainerMappings name="GrandchildrenContainer" semanticCandidatesExpression="aql:self.children->select(c|c.children->size()>0)" domainClass="basicfamily.Person">
+ <subNodeMappings name="GrandSonNode2" semanticCandidatesExpression="feature:children" domainClass="basicfamily.Man">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" resizeKind="NSEW" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </subNodeMappings>
+ <subNodeMappings name="GrandDaughterNode2" semanticCandidatesExpression="feature:children" domainClass="basicfamily.Woman">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" resizeKind="NSEW" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </subNodeMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" borderSizeComputationExpression="1" labelExpression="aql:self.name+'\'s children'">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelFormat>italic</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_yellow']"/>
+ </style>
+ </subContainerMappings>
+ <style xsi:type="style:FlatContainerStyleDescription" borderSizeComputationExpression="1" labelSize="14">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelFormat>bold</labelFormat>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <backgroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='white']"/>
+ <foregroundColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='light_gray']"/>
+ </style>
+ </containerMappings>
+ </defaultLayer>
+ </ownedRepresentations>
+ <ownedJavaExtensions qualifiedClassName="org.eclipse.sirius.sample.basicfamily.compartments.design.Services"/>
+ </ownedViewpoints>
+</description:Group>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/father.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/father.png
new file mode 100644
index 0000000000..a82ae04cdd
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/father.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/man.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/man.svg
new file mode 100644
index 0000000000..f38db46f43
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/man.svg
@@ -0,0 +1,668 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.12059"
+ height="255.1181"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="man.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="99.7399"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="37"
+ inkscape:window-y="105"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-408.15524,-46.324276)">
+ <g
+ id="g19649"
+ transform="matrix(1,0,0,0.96598873,40,55.864721)"
+ inkscape:export-filename="./man_16.png"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-ydpi="5.6444445">
+ <g
+ id="g19911"
+ inkscape:export-filename="./man_32.png"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-ydpi="11.28878">
+ <path
+ id="path8747-8-7"
+ style="fill:url(#linearGradient19660);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 567.90313,185.53891 c -33.4352,-12.1813 -44.12152,-26.51434 -44.12152,-48.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.99707 10.8876,-0.16818 12.61788,-23.102434 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942542 1.1931,-13.02136 -7.48529,-46.45689 -53.92547,-46.45689 -46.43139,0 -55.14332,33.43553 -53.92505,46.45689 0.97417,10.4171 3.50296,23.942542 3.50296,23.942542 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934384 10.74503,13.105364 12.61833,23.102434 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,36.34341 -44.12992,48.52471 -33.56983,12.26528 -55.37016,20.69861 -55.37016,29.18353 0,8.48484 0,39.50171 0,39.50171 l 255.11809,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-16.91825 -55.3702,-29.18353"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csccccsccccscsccsc" />
+ <path
+ id="path8747-2-2"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 531.90313,163.5389 c 15.92247,21.6274 91.87528,34.36486 91.3702,51.18354 -0.12735,4.24051 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.11809,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 80.77,-32.38606 91.37017,-51.18354 25.36834,23.52394 51.15632,22.62639 72.37772,0 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssccsscc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient19662);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path15558-1"
+ sodipodi:cx="171.22086"
+ sodipodi:cy="85.898735"
+ sodipodi:rx="47.982246"
+ sodipodi:ry="67.427681"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ transform="matrix(1,0,0,1.0773453,323.06636,-19.92)" />
+ <path
+ style="fill:#493225;fill-opacity:1;stroke:none"
+ d="m 445.78938,73.769474 c 1.31756,-1.756746 -0.79399,-0.315053 -3.39632,-5.612402 C 438.74122,50.294047 428.99625,15.0747 459.43694,-1.732 c 47.76132,-22.78746 92.04457,5.0573029 90.19329,48.64577 -1.76788,16.170177 -1.34166,19.523769 -8.75345,27.926388 1.65191,-2.145951 -5.96808,-36.444157 -13.79781,-44.898176 -10.1635,-10.97387 -7.09096,0.387162 -8.1605,-1.392307 -3.64784,-6.069137 -7.61704,-9.246016 -11.73967,-11.042003 0.48194,6.653529 1.60809,13.544249 -0.28073,10.245671 -3.21674,-5.617618 -23.25719,-14.519286 -18.83286,-9.295438 2.80224,3.308629 4.09372,12.2227 3.05381,10.843939 -7.6944,-10.201575 -20.94634,-6.037529 -25.68243,-4.531289 -7.98586,3.520797 -9.43386,-1.835007 -7.57578,23.703051 -4.21302,4.266354 -10.70103,21.991886 -12.07143,25.295868 z"
+ id="path15556-1"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccsscsssccc" />
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ d="m 532.96732,163.5389 c 10.07764,22.45347 90.29857,26.00795 90.30601,49.18341 l 0,41.12373 -255.11809,0.001 0,-41.12473 c 0.35714,-17.41349 75.80033,-25.13266 89.37017,-49.18367 14.01254,26.26353 22.5624,42.66513 35.66919,69.60296 3.01312,3.95605 2.02625,5.07735 5.03937,0"
+ style="fill:#56a6d1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path19619" />
+ </g>
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="./man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="./man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/mother.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/mother.png
new file mode 100644
index 0000000000..2650305dc7
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/mother.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/woman.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/woman.svg
new file mode 100644
index 0000000000..8879822f3b
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/icons/woman.svg
@@ -0,0 +1,656 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.11809"
+ height="255.11812"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="woman.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="-681.7745"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="19"
+ inkscape:window-y="75"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-72.440952,-46.324275)">
+ <g
+ id="g19643-7-4"
+ transform="matrix(1,0,0,0.96450955,27.857144,56.240766)"
+ inkscape:export-filename="./woman_32.png"
+ inkscape:export-xdpi="11.288889"
+ inkscape:export-ydpi="11.288889">
+ <path
+ sodipodi:nodetypes="csccccsccccscsccsc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.53891 c -33.4352,-12.1813 -44.12152,-22.51434 -44.12152,-44.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.997069 10.8876,-0.16818 12.61788,-23.102435 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942545 1.1931,-13.021361 -7.48529,-46.45688888 -53.92547,-46.45688888 -46.43139,0 -55.14332,33.43552788 -53.92505,46.45688888 0.97417,10.417103 3.50296,23.942545 3.50296,23.942545 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934385 10.74503,13.105366 12.61833,23.102435 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,32.34341 -44.129922,44.52471 -33.56983,12.26528 -55.37016,24.69861 -55.37016,33.18353 0,8.48484 0,39.50171 0,39.50171 l 255.118092,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-20.91825 -55.3702,-33.18353"
+ style="fill:url(#radialGradient19664-7-1);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-8-0-8" />
+ <path
+ sodipodi:nodetypes="cssccssccccc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.5389 c 33.56985,12.26529 55.3702,24.69862 55.3702,33.18354 0,4.24242 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.118092,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 21.80033,-20.91825 55.37017,-33.18354 l 54.125912,11.66324 13.54328,42.64516 9.03937,-0.1542 13.54325,-42.49096"
+ style="fill:#cf118a;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-2-4-7" />
+ <path
+ transform="matrix(1,0,0,1.0773453,-0.50507627,-19.919998)"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ sodipodi:ry="67.427681"
+ sodipodi:rx="47.982246"
+ sodipodi:cy="85.898735"
+ sodipodi:cx="171.22086"
+ id="path15558-4-5"
+ style="fill:url(#radialGradient19666-0-0);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:nodetypes="ccssscccccccc"
+ inkscape:connector-curvature="0"
+ id="path15556-5-4"
+ d="m 146.22702,136.27638 c 4.39007,20.43373 -32.31132,49.76818 -46.233493,33.72347 17.652453,-5.96556 28.866283,-34.62337 22.243603,-25.23444 -3.97589,5.6366 -24.168914,23.13372 -19.12935,13.5085 10.13551,-19.35813 14.01626,-50.06876 8.74431,-75.856506 -3.65184,-17.863028 -6.42727,-67.342708 24.01342,-84.1494025 47.76132,-22.7874615 88.90171,2.20015811 94.19329,48.6457695 2.07368,83.068069 -17.38327,88.572649 6.05927,124.782889 -17.28308,5.20692 -41.12899,-7.1673 -35.812,-38.22667 5.75735,-16.49554 6.85668,-15.07625 8.02973,-39.170423 -11.4533,-35.688339 -58.70475,-17.853611 -66.84809,-81.18674 -0.49637,12.305788 -2.51072,26.510542 -15.29986,46.49276 -2.69779,46.692763 7.77251,66.295743 20.03917,76.670793 z"
+ style="fill:#493225;fill-opacity:1;stroke:none" />
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="./man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="./man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.properties
new file mode 100644
index 0000000000..b1e9a90990
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.properties
@@ -0,0 +1,3 @@
+pluginName = org.eclipse.sirius.sample.basicfamily.compartments.design
+providerName = Eclipse Modeling Project
+viewpointName = MyViewpoint
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.xml
new file mode 100644
index 0000000000..b49ddaeeb1
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/plugin.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<plugin>
+ <extension point="org.eclipse.sirius.componentization">
+ <component class="org.eclipse.sirius.sample.basicfamily.compartments.design.Activator"
+ id="org.eclipse.sirius.sample.basicfamily.compartments.design"
+ name="basicfamily">
+ </component>
+ </extension>
+</plugin>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml
new file mode 100644
index 0000000000..97d9963b87
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2014 Obeo
+ 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:
+ Obeo - Initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.sirius</groupId>
+ <artifactId>sirius-parent</artifactId>
+ <version>4.1.3-SNAPSHOT</version>
+ <relativePath>../../../../packaging/org.eclipse.sirius.parent</relativePath>
+ </parent>
+
+ <artifactId>org.eclipse.sirius.sample.basicfamily.compartments.design</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <version>1.0.0-SNAPSHOT</version>
+
+</project>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Activator.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Activator.java
new file mode 100644
index 0000000000..87bb95ef14
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Activator.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2014, 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.compartments.design;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.sirius.business.api.componentization.ViewpointRegistry;
+import org.eclipse.sirius.viewpoint.description.Viewpoint;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.sirius.sample.basicfamily.compartments.design";
+
+ // The shared instance
+ private static Activator plugin;
+
+ private static Set<Viewpoint> viewpoints;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ viewpoints = new HashSet<Viewpoint>();
+ viewpoints.addAll(ViewpointRegistry.getInstance().registerFromPlugin(PLUGIN_ID + "/description/basicfamily.odesign"));
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ if (viewpoints != null) {
+ for (final Viewpoint viewpoint : viewpoints) {
+ ViewpointRegistry.getInstance().disposeFromPlugin(viewpoint);
+ }
+ viewpoints.clear();
+ viewpoints = null;
+ }
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+}
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Services.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Services.java
new file mode 100644
index 0000000000..ac24dbf5cb
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.compartments.design/src/org/eclipse/sirius/sample/basicfamily/compartments/design/Services.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2014, 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.compartments.design;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * The services class used by VSM.
+ */
+public class Services {
+
+ /**
+ * See http://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.sirius.doc%2Fdoc%2Findex.html&cp=24 for documentation on how to write service methods.
+ */
+ public EObject myService(EObject self, String arg) {
+ // TODO Auto-generated code
+ return self;
+ }
+}
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.classpath b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.classpath
new file mode 100644
index 0000000000..39810b7d6c
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.project b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.project
new file mode 100644
index 0000000000..ad2848b9af
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/.project
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.sirius.sample.basicfamily.starter.design</name>
+ <comment></comment>
+ <projects></projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments></arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/META-INF/MANIFEST.MF b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/META-INF/MANIFEST.MF
new file mode 100644
index 0000000000..e61977caed
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.sirius.sample.basicfamily.starter.design;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.sirius.sample.basicfamily.starter.design.Activator
+Bundle-Localization: plugin
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.sirius,
+ org.eclipse.sirius.common.acceleo.aql
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-Vendor: %providerName
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/build.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/build.properties
new file mode 100644
index 0000000000..2623f9b1c6
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/build.properties
@@ -0,0 +1,18 @@
+# ====================================================================
+# Copyright (c) 2017 Obeo
+# 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:
+# Obeo - initial API and implementation
+# ====================================================================
+bin.includes = META-INF/,\
+ .,\
+ description/,\
+ plugin.xml,\
+ plugin.properties,\
+ icons/
+output..=bin/
+source..=src/
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/description/basicfamily.odesign b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/description/basicfamily.odesign
new file mode 100644
index 0000000000..264dd48cd1
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/description/basicfamily.odesign
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<description:Group xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:tool="http://www.eclipse.org/sirius/diagram/description/tool/1.1.0" xmlns:tool_1="http://www.eclipse.org/sirius/description/tool/1.1.0" name="basicfamily" version="11.1.1.201610211630">
+ <ownedViewpoints name="persons (Basic Family Starter Tutorial Solution)" modelFileExtension="basicfamily">
+ <ownedRepresentations xsi:type="description_1:DiagramDescription" name="Persons diagram" domainClass="basicfamily.Family">
+ <defaultLayer name="Default">
+ <nodeMappings name="ManNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Man">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/man.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <nodeMappings name="WomanNode" semanticCandidatesExpression="feature:members" domainClass="basicfamily.Woman">
+ <style xsi:type="style:WorkspaceImageDescription" showIcon="false" sizeComputationExpression="4" resizeKind="NSEW" arcWidth="1" arcHeight="1" workspacePath="/org.eclipse.sirius.sample.basicfamily.design/icons/woman.svg">
+ <borderColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </style>
+ </nodeMappings>
+ <edgeMappings name="fatherEdge" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode']" targetFinderExpression="feature:father">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <edgeMappings name="motherEdge" sourceMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode'] //@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetMapping="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']" targetFinderExpression="feature:mother">
+ <style sizeComputationExpression="2">
+ <strokeColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='purple']"/>
+ <centerLabelStyleDescription>
+ <labelColor xsi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
+ </centerLabelStyleDescription>
+ </style>
+ </edgeMappings>
+ <toolSections>
+ <ownedTools xsi:type="tool:NodeCreationDescription" name="createMan" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='ManNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool_1:CreateInstance" typeName="basicfamily.Man" referenceName="members">
+ <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'man'+container.members->filter(basicfamily::Man)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ <ownedTools xsi:type="tool:NodeCreationDescription" name="createWoman" nodeMappings="//@ownedViewpoints[name='persons%20(Basic%20Family%20Starter%20Tutorial%20Solution)']/@ownedRepresentations[name='Persons%20diagram']/@defaultLayer/@nodeMappings[name='WomanNode']">
+ <variable name="container"/>
+ <viewVariable name="containerView"/>
+ <initialOperation>
+ <firstModelOperations xsi:type="tool_1:ChangeContext" browseExpression="var:container">
+ <subModelOperations xsi:type="tool_1:CreateInstance" typeName="basicfamily.Woman" referenceName="members">
+ <subModelOperations xsi:type="tool_1:SetValue" featureName="name" valueExpression="aql:'woman'+container.members->filter(basicfamily::Woman)->size()"/>
+ </subModelOperations>
+ </firstModelOperations>
+ </initialOperation>
+ </ownedTools>
+ </toolSections>
+ </defaultLayer>
+ </ownedRepresentations>
+ </ownedViewpoints>
+</description:Group>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/father.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/father.png
new file mode 100644
index 0000000000..a82ae04cdd
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/father.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/man.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/man.svg
new file mode 100644
index 0000000000..f38db46f43
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/man.svg
@@ -0,0 +1,668 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.12059"
+ height="255.1181"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="man.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="99.7399"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="37"
+ inkscape:window-y="105"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-408.15524,-46.324276)">
+ <g
+ id="g19649"
+ transform="matrix(1,0,0,0.96598873,40,55.864721)"
+ inkscape:export-filename="./man_16.png"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-ydpi="5.6444445">
+ <g
+ id="g19911"
+ inkscape:export-filename="./man_32.png"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-ydpi="11.28878">
+ <path
+ id="path8747-8-7"
+ style="fill:url(#linearGradient19660);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 567.90313,185.53891 c -33.4352,-12.1813 -44.12152,-26.51434 -44.12152,-48.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.99707 10.8876,-0.16818 12.61788,-23.102434 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942542 1.1931,-13.02136 -7.48529,-46.45689 -53.92547,-46.45689 -46.43139,0 -55.14332,33.43553 -53.92505,46.45689 0.97417,10.4171 3.50296,23.942542 3.50296,23.942542 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934384 10.74503,13.105364 12.61833,23.102434 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,36.34341 -44.12992,48.52471 -33.56983,12.26528 -55.37016,20.69861 -55.37016,29.18353 0,8.48484 0,39.50171 0,39.50171 l 255.11809,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-16.91825 -55.3702,-29.18353"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="csccccsccccscsccsc" />
+ <path
+ id="path8747-2-2"
+ style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ d="m 531.90313,163.5389 c 15.92247,21.6274 91.87528,34.36486 91.3702,51.18354 -0.12735,4.24051 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.11809,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 80.77,-32.38606 91.37017,-51.18354 25.36834,23.52394 51.15632,22.62639 72.37772,0 z"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cssccsscc" />
+ <path
+ sodipodi:type="arc"
+ style="fill:url(#radialGradient19662);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ id="path15558-1"
+ sodipodi:cx="171.22086"
+ sodipodi:cy="85.898735"
+ sodipodi:rx="47.982246"
+ sodipodi:ry="67.427681"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ transform="matrix(1,0,0,1.0773453,323.06636,-19.92)" />
+ <path
+ style="fill:#493225;fill-opacity:1;stroke:none"
+ d="m 445.78938,73.769474 c 1.31756,-1.756746 -0.79399,-0.315053 -3.39632,-5.612402 C 438.74122,50.294047 428.99625,15.0747 459.43694,-1.732 c 47.76132,-22.78746 92.04457,5.0573029 90.19329,48.64577 -1.76788,16.170177 -1.34166,19.523769 -8.75345,27.926388 1.65191,-2.145951 -5.96808,-36.444157 -13.79781,-44.898176 -10.1635,-10.97387 -7.09096,0.387162 -8.1605,-1.392307 -3.64784,-6.069137 -7.61704,-9.246016 -11.73967,-11.042003 0.48194,6.653529 1.60809,13.544249 -0.28073,10.245671 -3.21674,-5.617618 -23.25719,-14.519286 -18.83286,-9.295438 2.80224,3.308629 4.09372,12.2227 3.05381,10.843939 -7.6944,-10.201575 -20.94634,-6.037529 -25.68243,-4.531289 -7.98586,3.520797 -9.43386,-1.835007 -7.57578,23.703051 -4.21302,4.266354 -10.70103,21.991886 -12.07143,25.295868 z"
+ id="path15556-1"
+ inkscape:connector-curvature="0"
+ sodipodi:nodetypes="cccccsscsssccc" />
+ <path
+ sodipodi:nodetypes="cccccccc"
+ inkscape:connector-curvature="0"
+ d="m 532.96732,163.5389 c 10.07764,22.45347 90.29857,26.00795 90.30601,49.18341 l 0,41.12373 -255.11809,0.001 0,-41.12473 c 0.35714,-17.41349 75.80033,-25.13266 89.37017,-49.18367 14.01254,26.26353 22.5624,42.66513 35.66919,69.60296 3.01312,3.95605 2.02625,5.07735 5.03937,0"
+ style="fill:#56a6d1;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path19619" />
+ </g>
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="./man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="./man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/mother.png b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/mother.png
new file mode 100644
index 0000000000..2650305dc7
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/mother.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/woman.svg b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/woman.svg
new file mode 100644
index 0000000000..8879822f3b
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/icons/woman.svg
@@ -0,0 +1,656 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+ xmlns:dc="http://purl.org/dc/elements/1.1/"
+ xmlns:cc="http://creativecommons.org/ns#"
+ xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+ xmlns:svg="http://www.w3.org/2000/svg"
+ xmlns="http://www.w3.org/2000/svg"
+ xmlns:xlink="http://www.w3.org/1999/xlink"
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+ width="255.11809"
+ height="255.11812"
+ id="svg6897"
+ version="1.1"
+ inkscape:version="0.48.5 r10040"
+ sodipodi:docname="woman.svg">
+ <defs
+ id="defs3">
+ <linearGradient
+ id="linearGradient19633">
+ <stop
+ id="stop19635"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639" />
+ <stop
+ id="stop19637"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient15574-0"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ gradientUnits="userSpaceOnUse" />
+ <linearGradient
+ id="linearGradient19560">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19562" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19564" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19660"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19662"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19664"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560"
+ id="radialGradient19666"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19633-1">
+ <stop
+ id="stop19635-0"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-6" />
+ <stop
+ id="stop19637-3"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-0">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-4" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-8">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19692">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19694" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19696" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19664-7-1"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <linearGradient
+ id="linearGradient15560-8-6">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19666-0-0"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient19797">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop19799" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop19801" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-8"
+ id="linearGradient19660-5"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-8">
+ <stop
+ id="stop19635-7"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-9" />
+ <stop
+ id="stop19637-8"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-7"
+ id="radialGradient19662-8"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-7">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-9" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-5" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19967"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19969"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19971"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6"
+ id="radialGradient19973"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient19975"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622"
+ gradientTransform="translate(0,-0.37711)" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient19977"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient19975-0"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <linearGradient
+ id="linearGradient19633-0">
+ <stop
+ id="stop19635-77"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-64" />
+ <stop
+ id="stop19637-6"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient19977-7"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-6-4">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-47" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-6" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633"
+ id="linearGradient20057"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6"
+ id="radialGradient20059"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ id="linearGradient15560-8-6-1">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-81-4-7" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-6-7-3" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient3106">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop3108" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop3110" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient19633-05">
+ <stop
+ id="stop19635-3"
+ offset="0"
+ style="stop-color:#f2d8bc;stop-opacity:1;" />
+ <stop
+ style="stop-color:#f2d9bc;stop-opacity:1;"
+ offset="0.46557674"
+ id="stop19639-0" />
+ <stop
+ id="stop19637-0"
+ offset="1"
+ style="stop-color:#ebc599;stop-opacity:1;" />
+ </linearGradient>
+ <linearGradient
+ id="linearGradient15560-6-04">
+ <stop
+ style="stop-color:#f7e7d6;stop-opacity:1;"
+ offset="0"
+ id="stop15562-8-6" />
+ <stop
+ style="stop-color:#ebc599;stop-opacity:1;"
+ offset="1"
+ id="stop15564-7-9" />
+ </linearGradient>
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4020"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4022"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4024"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4026"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4028"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4030"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-05"
+ id="linearGradient4082"
+ gradientUnits="userSpaceOnUse"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-04"
+ id="radialGradient4084"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4086"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.0001349,0,-0.01708751)"
+ cx="172.14285"
+ cy="126.64789"
+ fx="172.14285"
+ fy="126.64789"
+ r="127.55905" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-8-6-1"
+ id="radialGradient4088"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="171.22086"
+ cy="85.898735"
+ fx="171.22086"
+ fy="85.898735"
+ r="49.222404" />
+ <linearGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient19633-0"
+ id="linearGradient4090"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="translate(0,-0.37711)"
+ x1="490.2981"
+ y1="170.93362"
+ x2="491.84476"
+ y2="30.933622" />
+ <radialGradient
+ inkscape:collect="always"
+ xlink:href="#linearGradient15560-6-4"
+ id="radialGradient4092"
+ gradientUnits="userSpaceOnUse"
+ gradientTransform="matrix(1,0,0,1.3950525,0,-33.934512)"
+ cx="151.22086"
+ cy="82.096695"
+ fx="151.22086"
+ fy="82.096695"
+ r="49.222404" />
+ </defs>
+ <sodipodi:namedview
+ inkscape:document-units="mm"
+ id="base"
+ pagecolor="#ffffff"
+ bordercolor="#666666"
+ borderopacity="1.0"
+ inkscape:pageopacity="0.0"
+ inkscape:pageshadow="2"
+ inkscape:zoom="0.24748738"
+ inkscape:cx="-681.7745"
+ inkscape:cy="-300.22866"
+ inkscape:current-layer="layer1"
+ showgrid="false"
+ inkscape:window-width="1574"
+ inkscape:window-height="1008"
+ inkscape:window-x="19"
+ inkscape:window-y="75"
+ inkscape:window-maximized="0"
+ units="mm"
+ fit-margin-top="0"
+ fit-margin-left="0"
+ fit-margin-right="0"
+ fit-margin-bottom="0" />
+ <metadata
+ id="metadata4">
+ <rdf:RDF>
+ <cc:Work
+ rdf:about="">
+ <dc:format>image/svg+xml</dc:format>
+ <dc:type
+ rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+ <dc:title></dc:title>
+ </cc:Work>
+ </rdf:RDF>
+ </metadata>
+ <g
+ inkscape:label="Layer 1"
+ inkscape:groupmode="layer"
+ id="layer1"
+ transform="translate(-72.440952,-46.324275)">
+ <g
+ id="g19643-7-4"
+ transform="matrix(1,0,0,0.96450955,27.857144,56.240766)"
+ inkscape:export-filename="./woman_32.png"
+ inkscape:export-xdpi="11.288889"
+ inkscape:export-ydpi="11.288889">
+ <path
+ sodipodi:nodetypes="csccccsccccscsccsc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.53891 c -33.4352,-12.1813 -44.12152,-22.51434 -44.12152,-44.52471 0,-13.1894 10.19902,-8.90494 14.67658,-33.09948 1.8733,-9.997069 10.8876,-0.16818 12.61788,-23.102435 0,-9.07299 -4.93971,-11.341214 -4.93971,-11.341214 0,0 2.52879,-13.525442 3.5034,-23.942545 1.1931,-13.021361 -7.48529,-46.45688888 -53.92547,-46.45688888 -46.43139,0 -55.14332,33.43552788 -53.92505,46.45688888 0.97417,10.417103 3.50296,23.942545 3.50296,23.942545 0,0 -4.93973,2.268224 -4.93973,11.341214 1.73075,22.934385 10.74503,13.105366 12.61833,23.102435 4.47756,24.19454 14.68452,19.91008 14.68452,33.09948 0,22.01037 -10.69426,32.34341 -44.129922,44.52471 -33.56983,12.26528 -55.37016,24.69861 -55.37016,33.18353 0,8.48484 0,39.50171 0,39.50171 l 255.118092,0 c 0,0 0,-31.01687 0,-39.50171 0,-8.48492 -21.80035,-20.91825 -55.3702,-33.18353"
+ style="fill:url(#radialGradient19664-7-1);fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-8-0-8" />
+ <path
+ sodipodi:nodetypes="cssccssccccc"
+ inkscape:connector-curvature="0"
+ d="m 244.3317,181.5389 c 33.56985,12.26529 55.3702,24.69862 55.3702,33.18354 0,4.24242 0,2.02364 0,10.74424 0,8.72061 -20,28.38062 -20,28.38062 l -215.118092,0 c 0,0 -20,-19.66001 -20,-28.38062 0,-8.7206 0,-6.50182 0,-10.74424 0,-8.48492 21.80033,-20.91825 55.37017,-33.18354 l 54.125912,11.66324 13.54328,42.64516 9.03937,-0.1542 13.54325,-42.49096"
+ style="fill:#cf118a;fill-opacity:1;fill-rule:nonzero;stroke:none"
+ id="path8747-2-4-7" />
+ <path
+ transform="matrix(1,0,0,1.0773453,-0.50507627,-19.919998)"
+ d="m 219.2031,85.898735 c 0,37.239275 -21.48238,67.427685 -47.98224,67.427685 -26.49987,0 -47.98225,-30.18841 -47.98225,-67.427685 0,-37.23928 21.48238,-67.427681 47.98225,-67.427681 26.49986,0 47.98224,30.188401 47.98224,67.427681 z"
+ sodipodi:ry="67.427681"
+ sodipodi:rx="47.982246"
+ sodipodi:cy="85.898735"
+ sodipodi:cx="171.22086"
+ id="path15558-4-5"
+ style="fill:url(#radialGradient19666-0-0);fill-opacity:1;stroke:#e6b57e;stroke-width:2.48031497;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+ sodipodi:type="arc" />
+ <path
+ sodipodi:nodetypes="ccssscccccccc"
+ inkscape:connector-curvature="0"
+ id="path15556-5-4"
+ d="m 146.22702,136.27638 c 4.39007,20.43373 -32.31132,49.76818 -46.233493,33.72347 17.652453,-5.96556 28.866283,-34.62337 22.243603,-25.23444 -3.97589,5.6366 -24.168914,23.13372 -19.12935,13.5085 10.13551,-19.35813 14.01626,-50.06876 8.74431,-75.856506 -3.65184,-17.863028 -6.42727,-67.342708 24.01342,-84.1494025 47.76132,-22.7874615 88.90171,2.20015811 94.19329,48.6457695 2.07368,83.068069 -17.38327,88.572649 6.05927,124.782889 -17.28308,5.20692 -41.12899,-7.1673 -35.812,-38.22667 5.75735,-16.49554 6.85668,-15.07625 8.02973,-39.170423 -11.4533,-35.688339 -58.70475,-17.853611 -66.84809,-81.18674 -0.49637,12.305788 -2.51072,26.510542 -15.29986,46.49276 -2.69779,46.692763 7.77251,66.295743 20.03917,76.670793 z"
+ style="fill:#493225;fill-opacity:1;stroke:none" />
+ </g>
+ <g
+ inkscape:export-ydpi="5.6444445"
+ inkscape:export-xdpi="5.6444445"
+ inkscape:export-filename="./man_16.png"
+ transform="matrix(0.78977954,0,0,0.76291812,-43.100336,434.7796)"
+ id="g19918">
+ <g
+ inkscape:export-ydpi="11.28878"
+ inkscape:export-xdpi="11.28878"
+ inkscape:export-filename="./man_32.png"
+ id="g19920">
+ <g
+ id="g19936" />
+ </g>
+ </g>
+ </g>
+</svg>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.properties b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.properties
new file mode 100644
index 0000000000..d70e1fa67d
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.properties
@@ -0,0 +1,13 @@
+# ====================================================================
+# Copyright (c) 2017 Obeo
+# 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:
+# Obeo - initial API and implementation
+# ====================================================================
+pluginName = org.eclipse.sirius.sample.basicfamily.starter.design
+providerName = Eclipse Modeling Project
+viewpointName = MyViewpoint
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.xml
new file mode 100644
index 0000000000..9849c2dcfc
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/plugin.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+<!--
+ Copyright (c) 2007, 2017 Obeo
+ 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:
+ Obeo - Initial API and implementation
+-->
+<plugin>
+ <extension point="org.eclipse.sirius.componentization">
+ <component class="org.eclipse.sirius.sample.basicfamily.starter.design.Activator"
+ id="org.eclipse.sirius.sample.basicfamily.starter.design"
+ name="basicfamily">
+ </component>
+ </extension>
+</plugin>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml
new file mode 100644
index 0000000000..18f257ae68
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/pom.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2014 Obeo
+ 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:
+ Obeo - Initial API and implementation
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.eclipse.sirius</groupId>
+ <artifactId>sirius-parent</artifactId>
+ <version>4.1.3-SNAPSHOT</version>
+ <relativePath>../../../../packaging/org.eclipse.sirius.parent</relativePath>
+ </parent>
+
+ <artifactId>org.eclipse.sirius.sample.basicfamily.starter.design</artifactId>
+ <packaging>eclipse-plugin</packaging>
+ <version>1.0.0-SNAPSHOT</version>
+
+</project>
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Activator.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Activator.java
new file mode 100644
index 0000000000..c777778154
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Activator.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.starter.design;
+
+import java.util.HashSet;
+import java.util.Set;
+
+import org.eclipse.sirius.business.api.componentization.ViewpointRegistry;
+import org.eclipse.sirius.viewpoint.description.Viewpoint;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.sirius.sample.basicfamily.starter.design";
+
+ // The shared instance
+ private static Activator plugin;
+
+ private static Set<Viewpoint> viewpoints;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ viewpoints = new HashSet<Viewpoint>();
+ viewpoints.addAll(ViewpointRegistry.getInstance().registerFromPlugin(PLUGIN_ID + "/description/basicfamily.odesign"));
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ if (viewpoints != null) {
+ for (final Viewpoint viewpoint : viewpoints) {
+ ViewpointRegistry.getInstance().disposeFromPlugin(viewpoint);
+ }
+ viewpoints.clear();
+ viewpoints = null;
+ }
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+}
diff --git a/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Services.java b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Services.java
new file mode 100644
index 0000000000..01417869c3
--- /dev/null
+++ b/plugins/org.eclipse.sirius.samples.family/solutions/org.eclipse.sirius.sample.basicfamily.starter.design/src/org/eclipse/sirius/sample/basicfamily/starter/design/Services.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2017 Obeo
+ * 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:
+ * Obeo - initial API and implementation
+ */
+package org.eclipse.sirius.sample.basicfamily.starter.design;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * The services class used by VSM.
+ */
+public class Services {
+
+ /**
+ * See http://help.eclipse.org/neon/index.jsp?topic=%2Forg.eclipse.sirius.doc%2Fdoc%2Findex.html&cp=24 for documentation on how to write service methods.
+ */
+ public EObject myService(EObject self, String arg) {
+ // TODO Auto-generated code
+ return self;
+ }
+}

Back to the top