Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjmallet2017-06-14 15:14:23 +0000
committerLaurent Redor2017-07-07 11:58:57 +0000
commit33a7914d5dd1dbca589c28128254c0ecaa200e00 (patch)
tree48a1021ea2a164a4f6d9865c8143e25a6aada2ff
parent59a503ac24c373d3cad49336874643a5f442c85e (diff)
downloadorg.eclipse.sirius-33a7914d5dd1dbca589c28128254c0ecaa200e00.tar.gz
org.eclipse.sirius-33a7914d5dd1dbca589c28128254c0ecaa200e00.tar.xz
org.eclipse.sirius-33a7914d5dd1dbca589c28128254c0ecaa200e00.zip
[518136] Remove bendpoints for rectilinear edge.
- enable action to remove bendpoints on rectilinear edge, - create new anchor and bendpoints for the new rectilinear edge, - add unitary tests using edge between two nodes or two border nodes. Bug: 518136 Change-Id: I32149acb5958364864f0ea4d490e1e8a0a4499d3 Signed-off-by: jmallet <jessy.mallet@obeo.fr>
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/business/api/query/EdgeQuery.java34
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/operation/RemoveBendpointsOperation.java75
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/routers/RectilinearEdgeUtil.java160
-rw-r--r--plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/testers/CanRemoveBendpoints.java2
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/Release_Notes.html33
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/Release_Notes.textile4
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.html16
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.textile14
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearAfterRemoveBendpoints.pngbin0 -> 3874 bytes
-rw-r--r--plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearWithBendpoints.pngbin0 -> 4260 bytes
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.aird1322
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.migrationmodeler9
-rw-r--r--plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/RemoveEdgeBendpointsTest.java232
13 files changed, 1179 insertions, 722 deletions
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/business/api/query/EdgeQuery.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/business/api/query/EdgeQuery.java
index 5825062e92..93bd070c0a 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/business/api/query/EdgeQuery.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/business/api/query/EdgeQuery.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2012 THALES GLOBAL SERVICES.
+ * Copyright (c) 2012, 2017 THALES GLOBAL SERVICES.
* 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
@@ -176,11 +176,8 @@ public class EdgeQuery {
*/
public boolean isEdgeWithTreeRoutingStyle() {
boolean isEdgeTreeRoutingStyle = false;
- ConnectorStyle connectorStyle = getConnectorStyle();
- if (connectorStyle != null) {
- if (Routing.TREE_LITERAL.getLiteral().equals(connectorStyle.getRouting().getLiteral())) {
- isEdgeTreeRoutingStyle = true;
- }
+ if (Routing.TREE_LITERAL.equals(getRoutingStyle())) {
+ isEdgeTreeRoutingStyle = true;
}
return isEdgeTreeRoutingStyle;
}
@@ -192,11 +189,8 @@ public class EdgeQuery {
*/
public boolean isEdgeWithRectilinearRoutingStyle() {
boolean isEdgeRectilinearRoutingStyle = false;
- ConnectorStyle connectorStyle = getConnectorStyle();
- if (connectorStyle != null) {
- if (Routing.RECTILINEAR_LITERAL.getLiteral().equals(connectorStyle.getRouting().getLiteral())) {
- isEdgeRectilinearRoutingStyle = true;
- }
+ if (Routing.RECTILINEAR_LITERAL.equals(getRoutingStyle())) {
+ isEdgeRectilinearRoutingStyle = true;
}
return isEdgeRectilinearRoutingStyle;
}
@@ -208,13 +202,23 @@ public class EdgeQuery {
*/
public boolean isEdgeWithObliqueRoutingStyle() {
boolean isEdgeObliqueRoutingStyle = false;
+ if (Routing.MANUAL_LITERAL.equals(getRoutingStyle())) {
+ isEdgeObliqueRoutingStyle = true;
+ }
+ return isEdgeObliqueRoutingStyle;
+ }
+
+ /**
+ * Get the routing style of the current edge.
+ *
+ * @return the routing style of the current edge.
+ */
+ public Routing getRoutingStyle() {
ConnectorStyle connectorStyle = getConnectorStyle();
if (connectorStyle != null) {
- if (Routing.MANUAL_LITERAL.getLiteral().equals(connectorStyle.getRouting().getLiteral())) {
- isEdgeObliqueRoutingStyle = true;
- }
+ return connectorStyle.getRouting();
}
- return isEdgeObliqueRoutingStyle;
+ return null;
}
private ConnectorStyle getConnectorStyle() {
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/operation/RemoveBendpointsOperation.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/operation/RemoveBendpointsOperation.java
index d5ae80d6d7..e9d2ad162e 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/operation/RemoveBendpointsOperation.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/internal/operation/RemoveBendpointsOperation.java
@@ -24,13 +24,17 @@ import org.eclipse.gmf.runtime.diagram.ui.editparts.ConnectionNodeEditPart;
import org.eclipse.gmf.runtime.notation.Bendpoints;
import org.eclipse.gmf.runtime.notation.Bounds;
import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.IdentityAnchor;
import org.eclipse.gmf.runtime.notation.LayoutConstraint;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.NotationFactory;
import org.eclipse.gmf.runtime.notation.RelativeBendpoints;
+import org.eclipse.gmf.runtime.notation.Routing;
+import org.eclipse.sirius.diagram.ui.business.api.query.EdgeQuery;
import org.eclipse.sirius.diagram.ui.business.internal.operation.AbstractModelChangeOperation;
import org.eclipse.sirius.diagram.ui.internal.edit.parts.AbstractDEdgeNameEditPart;
import org.eclipse.sirius.diagram.ui.internal.edit.parts.locator.EdgeLabelQuery;
+import org.eclipse.sirius.diagram.ui.tools.internal.routers.RectilinearEdgeUtil;
import org.eclipse.sirius.diagram.ui.tools.internal.util.GMFNotationUtilities;
import org.eclipse.sirius.ext.base.Option;
import org.eclipse.sirius.ext.gmf.runtime.editparts.GraphicalHelper;
@@ -48,6 +52,11 @@ import com.google.common.collect.Lists;
*/
public class RemoveBendpointsOperation extends AbstractModelChangeOperation<Void> {
+ /**
+ * Relative position for center anchor.
+ */
+ private static final String CENTERED_RELATIVE_POINT = "(0.5,0.5)"; //$NON-NLS-1$
+
private ConnectionNodeEditPart editPart;
/**
@@ -66,7 +75,6 @@ public class RemoveBendpointsOperation extends AbstractModelChangeOperation<Void
if (model instanceof Edge) {
Bendpoints bendpoints = ((Edge) model).getBendpoints();
if (bendpoints instanceof RelativeBendpoints) {
- ((RelativeBendpoints) bendpoints).setPoints(Lists.newArrayList());
computeNewBendpoints();
}
}
@@ -75,25 +83,69 @@ public class RemoveBendpointsOperation extends AbstractModelChangeOperation<Void
private void computeNewBendpoints() {
IFigure figure = editPart.getFigure();
- if (figure instanceof Connection) {
- Point absoluteSrcAnchorCoordinates = ((Connection) figure).getSourceAnchor().getReferencePoint();
- Point absoluteTgtAnchorCoordinates = ((Connection) figure).getTargetAnchor().getReferencePoint();
+ Edge edge = (Edge) editPart.getModel();
+ Bendpoints bendpoints = ((Edge) editPart.getModel()).getBendpoints();
+ RelativeBendpoints relativeBendpoints = (RelativeBendpoints) bendpoints;
+ // Number of bend-points composing the edge before remove action.
+ int originalNbPoint = relativeBendpoints.getPoints().size();
- // convert coordinates into logical coordinates
- GraphicalHelper.screen2logical(absoluteSrcAnchorCoordinates, editPart);
- GraphicalHelper.screen2logical(absoluteTgtAnchorCoordinates, editPart);
+ if (figure instanceof Connection) {
+ Point absoluteSrcAnchorCoordinates = null;
+ Point absoluteTgtAnchorCoordinates = null;
Rectangle srcAbsoluteBounds = getFigureBounds(editPart.getSource());
Rectangle tgtAbsoluteBounds = getFigureBounds(editPart.getTarget());
+ EdgeQuery edgeQuery = new EdgeQuery(edge);
+ Routing routingStyle = edgeQuery.getRoutingStyle();
+ // Compute anchor logical coordinates
+ if (Routing.MANUAL_LITERAL.equals(routingStyle)) {
+ absoluteSrcAnchorCoordinates = ((Connection) figure).getSourceAnchor().getReferencePoint();
+ absoluteTgtAnchorCoordinates = ((Connection) figure).getTargetAnchor().getReferencePoint();
+
+ // convert coordinates into logical coordinates
+ GraphicalHelper.screen2logical(absoluteSrcAnchorCoordinates, editPart);
+ GraphicalHelper.screen2logical(absoluteTgtAnchorCoordinates, editPart);
+ } else if (Routing.RECTILINEAR_LITERAL.equals(routingStyle)) {
+ int newX = srcAbsoluteBounds.x + srcAbsoluteBounds.width / 2;
+ int newY = srcAbsoluteBounds.y + srcAbsoluteBounds.height / 2;
+ absoluteSrcAnchorCoordinates = new Point(newX, newY);
+
+ newX = tgtAbsoluteBounds.x + tgtAbsoluteBounds.width / 2;
+ newY = tgtAbsoluteBounds.y + tgtAbsoluteBounds.height / 2;
+ absoluteTgtAnchorCoordinates = new Point(newX, newY);
+ }
+
// we compute the new bendpoints by computing the intersection
// points between the source and the target anchors.
if (srcAbsoluteBounds != null && tgtAbsoluteBounds != null) {
Option<Point> srcConnectionBendpoint = GraphicalHelper.getIntersection(absoluteSrcAnchorCoordinates, absoluteTgtAnchorCoordinates, srcAbsoluteBounds, true);
Option<Point> tgtConnectionBendpoint = GraphicalHelper.getIntersection(absoluteSrcAnchorCoordinates, absoluteTgtAnchorCoordinates, tgtAbsoluteBounds, false);
- if (srcConnectionBendpoint.some() && tgtConnectionBendpoint.some()) {
- setNewBendpoints(srcConnectionBendpoint.get(), tgtConnectionBendpoint.get(), absoluteSrcAnchorCoordinates, absoluteTgtAnchorCoordinates);
+ Point srcPoint = srcConnectionBendpoint.get();
+ Point tgtPoint = tgtConnectionBendpoint.get();
+ PointList pointList = null;
+ if (Routing.RECTILINEAR_LITERAL.equals(routingStyle)) {
+ pointList = RectilinearEdgeUtil.computeRectilinearCenteredBendpoints(srcAbsoluteBounds, tgtAbsoluteBounds, srcPoint, tgtPoint);
+ } else {
+ pointList = new PointList();
+ pointList.addPoint(srcPoint);
+ pointList.addPoint(tgtPoint);
+ }
+ if (srcConnectionBendpoint.some() && tgtConnectionBendpoint.some() && originalNbPoint > pointList.size()) {
+ if (Routing.RECTILINEAR_LITERAL.equals(routingStyle)) {
+ // Set GMF Anchor on figure center
+ IdentityAnchor srcAnchor = NotationFactory.eINSTANCE.createIdentityAnchor();
+ IdentityAnchor tgtAnchor = NotationFactory.eINSTANCE.createIdentityAnchor();
+ srcAnchor.setId(CENTERED_RELATIVE_POINT);
+ tgtAnchor.setId(CENTERED_RELATIVE_POINT);
+ edge.setSourceAnchor(srcAnchor);
+ edge.setTargetAnchor(tgtAnchor);
+ }
+ // Remove bend-points
+ relativeBendpoints.setPoints(Lists.newArrayList());
+ // Add new bend-points
+ setNewBendpoints(pointList, absoluteSrcAnchorCoordinates, absoluteTgtAnchorCoordinates);
}
}
@@ -101,12 +153,9 @@ public class RemoveBendpointsOperation extends AbstractModelChangeOperation<Void
}
- private void setNewBendpoints(Point sourceConnection, Point targetConnection, Point absoluteSrcAnchorCoordinates, Point absoluteTgtAnchorCoordinates) {
+ private void setNewBendpoints(PointList pointList, Point absoluteSrcAnchorCoordinates, Point absoluteTgtAnchorCoordinates) {
Object model = editPart.getModel();
if (model instanceof Edge) {
- PointList pointList = new PointList();
- pointList.addPoint(sourceConnection);
- pointList.addPoint(targetConnection);
GMFNotationUtilities.setGMFBendpoints((Edge) model, pointList, absoluteSrcAnchorCoordinates, absoluteTgtAnchorCoordinates);
// For each label, reset the offset to default
List<?> children = editPart.getChildren();
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/routers/RectilinearEdgeUtil.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/routers/RectilinearEdgeUtil.java
index d301259427..5ce9d4ba43 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/routers/RectilinearEdgeUtil.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/routers/RectilinearEdgeUtil.java
@@ -15,6 +15,8 @@ package org.eclipse.sirius.diagram.ui.tools.internal.routers;
import org.eclipse.draw2d.PositionConstants;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.draw2d.geometry.PointList;
+import org.eclipse.draw2d.geometry.PrecisionPoint;
+import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.gmf.runtime.draw2d.ui.geometry.LineSeg;
import org.eclipse.sirius.diagram.description.CenteringStyle;
@@ -27,8 +29,7 @@ import org.eclipse.sirius.diagram.description.CenteringStyle;
public final class RectilinearEdgeUtil {
/**
- * The minimal distance between an edge connection and the first bendpoint
- * to add (if we need to add bendpoints).
+ * The minimal distance between an edge connection and the first bendpoint to add (if we need to add bendpoints).
*/
private static final int MINIMAL_SEGMENT_SIZE = 20;
@@ -40,14 +41,11 @@ public final class RectilinearEdgeUtil {
* Centers the edge ends of the given rectilinear point list.
*
* @param line
- * the point list (in absolute coordinates). We assume this list
- * is rectilinear.
+ * the point list (in absolute coordinates). We assume this list is rectilinear.
* @param srcRefPoint
- * the source anchor absolute location. Must be centered if the
- * centering style is BOTH or SOURCE.
+ * the source anchor absolute location. Must be centered if the centering style is BOTH or SOURCE.
* @param tgtRefPoint
- * the target anchor absolute location. Must be centered if the
- * centering style is BOTH or TARGET.
+ * the target anchor absolute location. Must be centered if the centering style is BOTH or TARGET.
* @param centeringStyle
* the centering style.
*/
@@ -66,14 +64,12 @@ public final class RectilinearEdgeUtil {
}
/**
- * Adds transitional bendpoints in the cases where centering one segment
- * changes the other segment orientation.
+ * Adds transitional bendpoints in the cases where centering one segment changes the other segment orientation.
*
* @param line
* the rectilinear edge point list.
* @param absoluteAnchorCoordinates
- * the anchor absolute coordinates where the segment should be
- * aligned
+ * the anchor absolute coordinates where the segment should be aligned
* @param isFirst
* true if it concerns the source or false for the target.
*/
@@ -86,12 +82,10 @@ public final class RectilinearEdgeUtil {
}
/**
- * For straight edges, we need to had 2 bendpoints at the middle of the line
- * to center only one segment at time.
+ * For straight edges, we need to had 2 bendpoints at the middle of the line to center only one segment at time.
*
* @param line
- * the current 2 points list. This point list will be modified by
- * adding two points in the middle.
+ * the current 2 points list. This point list will be modified by adding two points in the middle.
*/
private static void addPointForStraightEdge(PointList line) {
Point pointToInsert = null;
@@ -111,8 +105,8 @@ public final class RectilinearEdgeUtil {
}
/**
- * In the case of an edge with 3 bendpoints (the edge forms a "L"), shifting
- * one segment could change the other segment connection point.
+ * In the case of an edge with 3 bendpoints (the edge forms a "L"), shifting one segment could change the other
+ * segment connection point.
*
* @param newLine
* the edge point list.
@@ -141,15 +135,14 @@ public final class RectilinearEdgeUtil {
}
/**
- * Adds two bendpoints on the segment we want to align with the anchor. That
- * avoids to break the other segment when centering this one. (in case of
- * edge with 3 bendpoints that means two perpendicular segments).
+ * Adds two bendpoints on the segment we want to align with the anchor. That avoids to break the other segment when
+ * centering this one. (in case of edge with 3 bendpoints that means two perpendicular segments).
*
* @param line
* the point list to add new bendpoints.
* @param isFirst
- * true if the first segment is concerned (from the source),
- * false for the second one (the last from the target).
+ * true if the first segment is concerned (from the source), false for the second one (the last from the
+ * target).
*/
private static void addPointForLEdge(PointList line, boolean isFirst) {
LineSeg segment = getSegment(line, isFirst);
@@ -194,8 +187,7 @@ public final class RectilinearEdgeUtil {
* @param absoluteAnchorCoordinates
* the anchor coordinates.
* @param isFirst
- * true to align the first segment (from the source), false to
- * align the last one (from the target).
+ * true to align the first segment (from the source), false to align the last one (from the target).
*/
private static void alignSegmentTowardAnchor(PointList line, Point absoluteAnchorCoordinates, boolean isFirst) {
LineSeg segment = getSegment(line, isFirst);
@@ -224,9 +216,8 @@ public final class RectilinearEdgeUtil {
* the edge point list.
* @param isFirst
* true to get the first segment, false to get the last one.
- * @return the segment. The origin point is always the one connected to the
- * shape. For the first segment, the origin is the first point, for
- * the last segment, the origin is the last point.
+ * @return the segment. The origin point is always the one connected to the shape. For the first segment, the origin
+ * is the first point, for the last segment, the origin is the last point.
*/
private static LineSeg getSegment(PointList line, boolean isFirst) {
if (isFirst) {
@@ -237,10 +228,8 @@ public final class RectilinearEdgeUtil {
}
/**
- * From
- * org.eclipse.gmf.runtime.draw2d.ui.internal.routers.RectilinearRouter.
- * removeRedundantPoints(PointList) Iterates through points of a polyline
- * and does the following: if 3 points lie on the same line the middle point
+ * From org.eclipse.gmf.runtime.draw2d.ui.internal.routers.RectilinearRouter. removeRedundantPoints(PointList)
+ * Iterates through points of a polyline and does the following: if 3 points lie on the same line the middle point
* is removed
*
* @param line
@@ -275,4 +264,111 @@ public final class RectilinearEdgeUtil {
}
return line.size() != initialNumberOfPoints;
}
+
+ /**
+ * Compute the point list (in absolute coordinates) composing rectilinear edge. Points are aligned with center of
+ * source or target node side from which the edge is connected.
+ *
+ * @param srcAbsoluteBounds
+ * figure bounds of the edge source
+ * @param tgtAbsoluteBounds
+ * figure bounds of the edge target
+ * @param srcPoint
+ * source point of the rectilinear edge
+ * @param tgtPoint
+ * target point of the rectilinear edge
+ * @return the point list (in absolute coordinates) composing rectilinear edge.
+ */
+ public static PointList computeRectilinearCenteredBendpoints(Rectangle srcAbsoluteBounds, Rectangle tgtAbsoluteBounds, Point srcPoint, Point tgtPoint) {
+ PointList pointList = new PointList();
+ // check if source and target side of connection is horizontal
+ LineSeg srcSeg = getBoundSideIntersection(srcPoint, srcAbsoluteBounds);
+ LineSeg tgtSeg = getBoundSideIntersection(tgtPoint, tgtAbsoluteBounds);
+ if (srcSeg != null && tgtSeg != null) {
+ Point middleSrcSegment = getMiddleOfSegment(srcSeg);
+ Point middleTgtSegment = getMiddleOfSegment(tgtSeg);
+ if (srcSeg.isHorizontal()) {
+ srcPoint.setX(middleSrcSegment.x);
+ pointList.addPoint(srcPoint);
+ if (srcPoint.x == tgtPoint.x) {
+ // edge is vertical
+ tgtPoint.setX(middleTgtSegment.x);
+ } else if (tgtSeg.isHorizontal()) {
+ // edge is composed of 3 segments (4 points)
+ tgtPoint.setX(middleTgtSegment.x);
+ int middleY = (srcPoint.y + tgtPoint.y) / 2;
+ pointList.addPoint(new Point(srcPoint.x, middleY));
+ pointList.addPoint(new Point(tgtPoint.x, middleY));
+ } else {
+ // edge is composed of 2 segments (3 points)
+ tgtPoint.setY(middleTgtSegment.y);
+ pointList.addPoint(new Point(srcPoint.x, tgtPoint.y));
+ }
+ pointList.addPoint(tgtPoint);
+ } else {
+ srcPoint.setY(middleSrcSegment.y);
+ pointList.addPoint(srcPoint);
+ if (srcPoint.y == tgtPoint.y) {
+ // edge is horizontal
+ tgtPoint.setY(middleTgtSegment.y);
+ } else if (tgtSeg.isVertical()) {
+ // edge is composed of 3 segments (4 points)
+ tgtPoint.setY(middleTgtSegment.y);
+ int middleX = (srcPoint.x + tgtPoint.x) / 2;
+ pointList.addPoint(new Point(middleX, srcPoint.y));
+ pointList.addPoint(new Point(middleX, tgtPoint.y));
+ } else {
+ // edge is composed of 2 segments (3 points)
+ tgtPoint.setX(middleTgtSegment.x);
+ pointList.addPoint(new Point(tgtPoint.x, srcPoint.y));
+ }
+ pointList.addPoint(tgtPoint);
+ }
+ }
+ return pointList;
+ }
+
+ /**
+ * Get the segment of bounds figure which include a given point.
+ *
+ * @param boundPoint
+ * point of the figure bounds
+ * @param bounds
+ * bounds of the figure
+ * @return the segment of bounds figure which include a given point.
+ */
+ private static LineSeg getBoundSideIntersection(Point boundPoint, Rectangle bounds) {
+ LineSeg seg = null;
+ if (boundPoint != null && bounds != null) {
+ Point topLeftCorner = new Point(bounds.x, bounds.y);
+ Point topRightCorner = new Point(bounds.x + bounds.width, bounds.y);
+ Point btmLeftCorner = new Point(bounds.x, bounds.y + bounds.height);
+ Point btmRightCorner = new Point(bounds.x + bounds.width, bounds.y + bounds.height);
+ if (bounds.x == boundPoint.x) {
+ seg = new LineSeg(topLeftCorner, btmLeftCorner);
+ } else if (bounds.x + bounds.width == boundPoint.x) {
+ seg = new LineSeg(topRightCorner, btmRightCorner);
+ } else if (bounds.y == boundPoint.y) {
+ seg = new LineSeg(topLeftCorner, topRightCorner);
+ } else if (bounds.y + bounds.height == boundPoint.y) {
+ seg = new LineSeg(btmLeftCorner, btmRightCorner);
+ }
+ }
+ return seg;
+ }
+
+ /**
+ * Get the middle point of a given segment.
+ *
+ * @param segment
+ * segment to determine the middle
+ * @return the middle of the segment.
+ */
+ private static Point getMiddleOfSegment(LineSeg segment) {
+ if (segment != null) {
+ return new PrecisionPoint((segment.getOrigin().x + segment.getTerminus().x) * 0.5d, (segment.getOrigin().y + segment.getTerminus().y) * 0.5d);
+ } else {
+ return null;
+ }
+ }
}
diff --git a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/testers/CanRemoveBendpoints.java b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/testers/CanRemoveBendpoints.java
index bf8bb6b8ff..54670aa6c2 100644
--- a/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/testers/CanRemoveBendpoints.java
+++ b/plugins/org.eclipse.sirius.diagram.ui/src-diag/org/eclipse/sirius/diagram/ui/tools/internal/testers/CanRemoveBendpoints.java
@@ -31,7 +31,7 @@ public class CanRemoveBendpoints extends PropertyTester {
Object model = ((ConnectionNodeEditPart) receiver).getModel();
if (model instanceof Edge) {
EdgeQuery edgeQuery = new EdgeQuery((Edge) model);
- return edgeQuery.isEdgeWithObliqueRoutingStyle();
+ return edgeQuery.isEdgeWithObliqueRoutingStyle() || edgeQuery.isEdgeWithRectilinearRoutingStyle();
}
}
return false;
diff --git a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
index c910317490..c8a0396535 100644
--- a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
+++ b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.html
@@ -16,6 +16,9 @@
<a href="#sirius5.1.0">Changes in Sirius 5.1.0</a>
<ol style="list-style: disc;">
<li>
+ <a href="#UserVisibleChanges">User-Visible Changes</a>
+ </li>
+ <li>
<a href="#SpecifierVisibleChanges">Specifier-Visible Changes</a>
</li>
<li>
@@ -30,7 +33,7 @@
<a href="#sirius5.0.0">Changes in Sirius 5.0.0</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges">User-Visible Changes</a>
+ <a href="#UserVisibleChanges2">User-Visible Changes</a>
</li>
<li>
<a href="#SpecifierVisibleChanges2">Specifier-Visible Changes</a>
@@ -44,7 +47,7 @@
<a href="#sirius4.1.2">Changes in Sirius 4.1.2</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges2">User-Visible Changes</a>
+ <a href="#UserVisibleChanges3">User-Visible Changes</a>
</li>
<li>
<a href="#DeveloperVisibleChanges3">Developer-Visible Changes</a>
@@ -55,7 +58,7 @@
<a href="#sirius4.1.1">Changes in Sirius 4.1.1</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges3">User-Visible Changes</a>
+ <a href="#UserVisibleChanges4">User-Visible Changes</a>
</li>
<li>
<a href="#DeveloperVisibleChanges4">Developer-Visible Changes</a>
@@ -66,7 +69,7 @@
<a href="#sirius4.1.0">Changes in Sirius 4.1.0</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges4">User-Visible Changes</a>
+ <a href="#UserVisibleChanges5">User-Visible Changes</a>
</li>
<li>
<a href="#SpecifierVisibleChanges3">Specifier-Visible Changes</a>
@@ -80,7 +83,7 @@
<a href="#sirius4.0.0">Changes in Sirius 4.0.0</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges5">User-Visible Changes</a>
+ <a href="#UserVisibleChanges6">User-Visible Changes</a>
</li>
<li>
<a href="#SpecifierVisibleChanges4">Specifier-Visible Changes</a>
@@ -94,7 +97,7 @@
<a href="#sirius3.1.0">Changes in Sirius 3.1.0</a>
<ol style="list-style: disc;">
<li>
- <a href="#UserVisibleChanges6">User-Visible Changes</a>
+ <a href="#UserVisibleChanges7">User-Visible Changes</a>
</li>
<li>
<a href="#SpecifierVisibleChanges5">Specifier-Visible Changes</a>
@@ -111,6 +114,12 @@
<a href="Release_Notes_Previous.html">the release notes from previous versions</a> for details about older releases.
</p>
<h2 id="sirius5.1.0">Changes in Sirius 5.1.0</h2>
+ <h3 id="UserVisibleChanges">User-Visible Changes</h3>
+ <ul>
+ <li><span class="label label-info">Added</span> The end user can now
+ <a href="user/diagrams/Diagrams.html#RemoveBendpoints">remove all bend-points</a> on rectilinear edges. It was only possible on oblique edges before. This action is available on edge context menu &#8220;Remove Bend-points&#8221; or by using the shortcut &#8220;Ctrl&#8221; + &#8220;Shift&#8221; + &#8220;-&#8221;. If number of bend-points can not be reduced, remove action will be inefficient.
+ </li>
+ </ul>
<h3 id="SpecifierVisibleChanges">Specifier-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> An
@@ -149,7 +158,7 @@
<a href="user/general/Aird_Editor.html">the aird editor</a>.
</p>
<h2 id="sirius5.0.0">Changes in Sirius 5.0.0</h2>
- <h3 id="UserVisibleChanges">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges2">User-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> An new
<em>aird editor</em> is available on
@@ -739,7 +748,7 @@ SWTBotUtils.waitAllUiEvents();
</pre>
<h2 id="sirius4.1.2">Changes in Sirius 4.1.2</h2>
- <h3 id="UserVisibleChanges2">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges3">User-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> A new preference named
<em>Maximum size of tabs name</em> is available in the Sirius Properties View preference page. This preference is used to shorten the tabs names when the default rules are used to render the properties view.
@@ -779,7 +788,7 @@ SWTBotUtils.waitAllUiEvents();
<code>org.eclipse.sirius.diagram.ui.tools.api.format.SiriusFormatDataManagerWithMapping.addFormatData(FormatDataKey, RepresentationElementMapping, AbstractFormatData)</code> to better handle copy/paste format cases.
</p>
<h2 id="sirius4.1.1">Changes in Sirius 4.1.1</h2>
- <h3 id="UserVisibleChanges3">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges4">User-Visible Changes</h3>
<ul>
<li><span class="label label-info">Modified</span>The &#8220;straighten to&#8221; actions were previously disabled when an edge is connected to border nodes that have several edges. It is now allowed.</li>
</ul>
@@ -790,7 +799,7 @@ SWTBotUtils.waitAllUiEvents();
</li>
</ul>
<h2 id="sirius4.1.0">Changes in Sirius 4.1.0</h2>
- <h3 id="UserVisibleChanges4">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges5">User-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> Copy/Paste Layout has been completed with Copy/Paste Style and Copy/Paste Format.
<em>Paste Format</em> is equivalent to paste
@@ -1308,7 +1317,7 @@ SWTBotUtils.waitAllUiEvents();
</li>
</ul>
<h2 id="sirius4.0.0">Changes in Sirius 4.0.0</h2>
- <h3 id="UserVisibleChanges5">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges6">User-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> The user can now filter elements according to a Typed variable (String, Integer, EEnum or any EDataType). If a user applies a filter containing Typed Variables, a dialog is displayed to allow user entering the Typed Variable values. That values can be used as variables in the Condition Expression of the Variable Filter.</li>
<li><span class="label label-success">Added</span> When the diagram is larger than the editor, you can move it in all directions pressing the middle-button and dragging the mouse (keeping the button pressed).</li>
@@ -1797,7 +1806,7 @@ SWTBotUtils.waitAllUiEvents();
</li>
</ul>
<h2 id="sirius3.1.0">Changes in Sirius 3.1.0</h2>
- <h3 id="UserVisibleChanges6">User-Visible Changes</h3>
+ <h3 id="UserVisibleChanges7">User-Visible Changes</h3>
<ul>
<li><span class="label label-success">Added</span> A new feature allows to snap to all shapes (instead of just to snap to sibling shapes). The <kdb>F4</kdb> shortcut key activates this mode when you resize a node, move a node or move a bendpoint of an edge, see
<a href="./user/diagrams/Diagrams.html#snap_to_shapes">the documentation</a> for details.
diff --git a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.textile b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.textile
index 7b469f9377..d731ce23ff 100644
--- a/plugins/org.eclipse.sirius.doc/doc/Release_Notes.textile
+++ b/plugins/org.eclipse.sirius.doc/doc/Release_Notes.textile
@@ -6,6 +6,10 @@ This document contains the release notes for recent major releases of Sirius. Se
h2(#sirius5.1.0). Changes in Sirius 5.1.0
+h3. User-Visible Changes
+
+* <span class="label label-info">Added</span> The end user can now "remove all bend-points":user/diagrams/Diagrams.html#RemoveBendpoints on rectilinear edges. It was only possible on oblique edges before. This action is available on edge context menu "Remove Bend-points" or by using the shortcut "Ctrl" + "Shift" + "-". If number of bend-points can not be reduced, remove action will be inefficient.
+
h3. Specifier-Visible Changes
* <span class="label label-success">Added</span> An "automatic migration":./user/general/Modeling%20Project.html#Migration has been added in this version to fix diagram with edge labels corrupted (see "bugzilla #518870":https://bugs.eclipse.org/bugs/show_bug.cgi?id=518870 for more details). Contrary to all previous migrations, this one logs an information in the _Error Log_ view to inform how many labels have been fixed in concerned diagrams. If detected as "corrupted label", the label is reset to its default location (as if you launch the "Snap Back" action of it). If at least one label is detected as "corrupted label", the layout is also potentially corrupted (nodes, children of the diagram, with x or y coordinate very big). In this case, the concerned nodes are moved near 5000 (or -5000) as new coordinate. A message is added in this case: _Some nodes have also been moved as the layout of this diagram is corrupted. A Reset Origin and/or manual layout is probably needed for this diagram._ The rules applied to detect a corrupted label are the following:
diff --git a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.html b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.html
index 5d87c2fbf0..e9a887a830 100644
--- a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.html
+++ b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.html
@@ -294,7 +294,9 @@
<em>Snap to grid</em>, and unlike to snap for node, there is no guide drawn during the move.
</p>
<h4 id="RemoveBendpoints">Remove Bend-points</h4>
- <p>You can define some bend-points (or inflection points) on an edge. It is possible to remove all these bend-points to retrieve the original Straight edge. This action is available within the edge context menu or by using the shortcut &#8220;Ctrl&#8221; + &#8220;Shift&#8221; + &#8220;-&#8221;. This action is only available on edges with a &#8220;Straight&#8221; routing style.</p>
+ <p>You can define some bend-points (or inflection points) on an edge. It is possible to remove bend-points to retrieve simple edge.
+ <br/>For oblique edges, all bend-points will be removed to retrieve the original Straight edge.
+ </p>
<p>The edge state just after its creation:
<br/>
<img border="0" src="images/beforeBendpoints.png"/>
@@ -307,6 +309,18 @@
<br/>
<img border="0" src="images/afterRemoveBendpoints.png"/>
</p>
+ <p>For rectilinear edges, bend-points will be removed to retrieve a rectilinear edge with source and target connection points centered on the middle of the source or target node appropriate side. One additional bend-point is inserted if source side and target side are in opposite direction. Two intermediates bend-points are inserted if source side and target side are in the same direction.
+ <br/>If number of bend-points can not be reduced, remove action will be inefficient (for example, case when the rectilinear edge is straight).
+ </p>
+ <p>The rectilinear edge after defining some bend-points:
+ <br/>
+ <img border="0" src="images/rectilinearWithBendpoints.png"/>
+ </p>
+ <p>The user executes the &#8220;Remove Bend-points&#8221; action:
+ <br/>
+ <img border="0" src="images/rectilinearAfterRemoveBendpoints.png"/>
+ </p>
+ <p>This action is available within the edge context menu or by using the shortcut &#8220;Ctrl&#8221; + &#8220;Shift&#8221; + &#8220;-&#8221; and it is not available on edges with a &#8220;Tree&#8221; routing style.</p>
<h4 id="straighten_an_edge">Straighten an edge</h4>
<p>There are four actions to straighten an edge, i.e. to transform an edge to an horizontal, or vertical, straight edge (with only one starting point and one ending point).
<br/>If the edge is connected to a border node, the border node is moved too.
diff --git a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.textile b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.textile
index a68a1fe014..a86dadf313 100644
--- a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.textile
+++ b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/Diagrams.textile
@@ -130,7 +130,8 @@ It is possible to snap the bend-points to all shapes by pressing <kdb>F4</kdb> s
h4. Remove Bend-points
-You can define some bend-points (or inflection points) on an edge. It is possible to remove all these bend-points to retrieve the original Straight edge. This action is available within the edge context menu or by using the shortcut "Ctrl" + "Shift" + "-". This action is only available on edges with a "Straight" routing style.
+You can define some bend-points (or inflection points) on an edge. It is possible to remove bend-points to retrieve simple edge.
+For oblique edges, all bend-points will be removed to retrieve the original Straight edge.
The edge state just after its creation:
!images/beforeBendpoints.png!
@@ -141,6 +142,17 @@ The user defines some bend-points:
The user executes the "Remove Bend-points" action:
!images/afterRemoveBendpoints.png!
+For rectilinear edges, bend-points will be removed to retrieve a rectilinear edge with source and target connection points centered on the middle of the source or target node appropriate side. One additional bend-point is inserted if source side and target side are in opposite direction. Two intermediates bend-points are inserted if source side and target side are in the same direction.
+If number of bend-points can not be reduced, remove action will be inefficient (for example, case when the rectilinear edge is straight).
+
+The rectilinear edge after defining some bend-points:
+!images/rectilinearWithBendpoints.png!
+
+The user executes the "Remove Bend-points" action:
+!images/rectilinearAfterRemoveBendpoints.png!
+
+This action is available within the edge context menu or by using the shortcut "Ctrl" + "Shift" + "-" and it is not available on edges with a "Tree" routing style.
+
h4(#straighten_an_edge). Straighten an edge
There are four actions to straighten an edge, i.e. to transform an edge to an horizontal, or vertical, straight edge (with only one starting point and one ending point).
diff --git a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearAfterRemoveBendpoints.png b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearAfterRemoveBendpoints.png
new file mode 100644
index 0000000000..eb55619840
--- /dev/null
+++ b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearAfterRemoveBendpoints.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearWithBendpoints.png b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearWithBendpoints.png
new file mode 100644
index 0000000000..0f0cf4d5bb
--- /dev/null
+++ b/plugins/org.eclipse.sirius.doc/doc/user/diagrams/images/rectilinearWithBendpoints.png
Binary files differ
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.aird b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.aird
index 06420dc597..2139489bd4 100644
--- a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.aird
+++ b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.aird
@@ -1,657 +1,703 @@
<?xml version="1.0" encoding="UTF-8"?>
-<viewpoint:DAnalysis 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:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:migrationmodeler="http://www.eclipse.org/sirius/tests/sample/migrationmodeler" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style" xmi:id="_t-oJYCebEeSmof-c68Q1Yw" selectedViews="_I3-xcCecEeSmof-c68Q1Yw" version="8.1.1">
- <models xmi:type="migrationmodeler:TestCase" href="useCase.migrationmodeler#/"/>
- <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_I3-xcCecEeSmof-c68Q1Yw" initialized="true">
- <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_LmmMcCoQEeSCAKBl1ccyNQ" name="new useCase">
- <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_Lmv9cCoQEeSCAKBl1ccyNQ" source="GMF_DIAGRAMS">
- <data xmi:type="notation:Diagram" xmi:id="_Lmv9cSoQEeSCAKBl1ccyNQ" type="Sirius" element="_LmmMcCoQEeSCAKBl1ccyNQ" measurementUnit="Pixel">
- <children xmi:type="notation:Node" xmi:id="_LmzAwCoQEeSCAKBl1ccyNQ" type="2001" element="_LmmMcSoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm1dACoQEeSCAKBl1ccyNQ" type="5002">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnPKESoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnBDMCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmMcioQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnBDMSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnBDMioQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LmzAwSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnPKECoQEeSCAKBl1ccyNQ" x="144" y="324" width="49" height="49"/>
+<xmi:XMI 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:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:migrationmodeler="http://www.eclipse.org/sirius/tests/sample/migrationmodeler" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style">
+ <viewpoint:DAnalysis xmi:id="_t-oJYCebEeSmof-c68Q1Yw" selectedViews="_I3-xcCecEeSmof-c68Q1Yw" version="12.0.0.201704271200">
+ <semanticResources>useCase.migrationmodeler</semanticResources>
+ <ownedViews xmi:type="viewpoint:DView" xmi:id="_I3-xcCecEeSmof-c68Q1Yw">
+ <viewpoint xmi:type="description:Viewpoint" href="useCase.odesign#//@ownedViewpoints[name='resizing']"/>
+ <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" xmi:id="_JEuXIFHfEeeoGv7ZuRd91Q" name="new useCase" repPath="#_LmmMcCoQEeSCAKBl1ccyNQ">
+ <description xmi:type="description_1:DiagramDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']"/>
+ <target xmi:type="migrationmodeler:Diagram" href="useCase.migrationmodeler#//@representations.0"/>
+ </ownedRepresentationDescriptors>
+ </ownedViews>
+ </viewpoint:DAnalysis>
+ <diagram:DSemanticDiagram xmi:id="_LmmMcCoQEeSCAKBl1ccyNQ" name="new useCase">
+ <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_Lmv9cCoQEeSCAKBl1ccyNQ" source="GMF_DIAGRAMS">
+ <data xmi:type="notation:Diagram" xmi:id="_Lmv9cSoQEeSCAKBl1ccyNQ" type="Sirius" element="_LmmMcCoQEeSCAKBl1ccyNQ" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_LmzAwCoQEeSCAKBl1ccyNQ" type="2001" element="_LmmMcSoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm1dACoQEeSCAKBl1ccyNQ" type="5002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnPKESoQEeSCAKBl1ccyNQ" x="-1"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_Lm2rICoQEeSCAKBl1ccyNQ" type="2001" element="_LmmzgCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm3SMCoQEeSCAKBl1ccyNQ" type="5002">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnQ_QSoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnCRUCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzgSoQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnCRUSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnCRUioQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm2rISoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQ_QCoQEeSCAKBl1ccyNQ" x="828" y="336" width="61" height="61"/>
+ <children xmi:type="notation:Node" xmi:id="_LnBDMCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmMcioQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnBDMSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnBDMioQEeSCAKBl1ccyNQ"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_Lm35QCoQEeSCAKBl1ccyNQ" type="2001" element="_LmmzhSoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm4gUCoQEeSCAKBl1ccyNQ" type="5002">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnSNYSoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnCRUyoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzhioQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnCRVCoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnCRVSoQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm35QSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnSNYCoQEeSCAKBl1ccyNQ" x="888" y="432" width="30" height="30"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lm6VgCoQEeSCAKBl1ccyNQ" type="2002" element="_LmmziioQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm7joCoQEeSCAKBl1ccyNQ" type="5006"/>
- <children xmi:type="notation:Node" xmi:id="_Lm8KsCoQEeSCAKBl1ccyNQ" type="7001">
- <styles xmi:type="notation:SortingStyle" xmi:id="_Lm8KsSoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm8KsioQEeSCAKBl1ccyNQ"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnDfcCoQEeSCAKBl1ccyNQ" type="3012" element="_LmmziyoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnEGgCoQEeSCAKBl1ccyNQ" type="5010">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnTbgSoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnFUoCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzjCoQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnFUoSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnFUoioQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnDfcSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnTbgCoQEeSCAKBl1ccyNQ" x="84" y="77" width="61" height="44"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm6VgSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnS0cCoQEeSCAKBl1ccyNQ" x="60" y="72" width="171" height="87"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lm8KsyoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzlSoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm8xwCoQEeSCAKBl1ccyNQ" type="5006"/>
- <children xmi:type="notation:Node" xmi:id="_Lm8xwSoQEeSCAKBl1ccyNQ" type="7001">
- <styles xmi:type="notation:SortingStyle" xmi:id="_Lm8xwioQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm8xwyoQEeSCAKBl1ccyNQ"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnF7sCoQEeSCAKBl1ccyNQ" type="3012" element="_LmmzlioQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnGiwCoQEeSCAKBl1ccyNQ" type="5010">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnV3wCoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnHJ0CoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzlyoQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnHJ0SoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnHJ0ioQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnF7sSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnVQsSoQEeSCAKBl1ccyNQ" x="185" y="52" width="44" height="49"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm8KtCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnVQsCoQEeSCAKBl1ccyNQ" x="456" y="96" width="195" height="111"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lm9Y0CoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzoCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm9_4CoQEeSCAKBl1ccyNQ" type="5006"/>
- <children xmi:type="notation:Node" xmi:id="_Lm9_4SoQEeSCAKBl1ccyNQ" type="7001">
- <styles xmi:type="notation:SortingStyle" xmi:id="_Lm9_4ioQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm9_4yoQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm9Y0SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnWe0SoQEeSCAKBl1ccyNQ" x="804" y="108" width="147" height="75"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lm-m8CoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzpioQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lm_OACoQEeSCAKBl1ccyNQ" type="5006"/>
- <children xmi:type="notation:Node" xmi:id="_Lm_1ECoQEeSCAKBl1ccyNQ" type="7001">
- <styles xmi:type="notation:SortingStyle" xmi:id="_Lm_1ESoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm_1EioQEeSCAKBl1ccyNQ"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnHw4CoQEeSCAKBl1ccyNQ" type="3012" element="_LmmzpyoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnIX8CoQEeSCAKBl1ccyNQ" type="5010">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_MnYUASoQEeSCAKBl1ccyNQ" x="-1"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnI_ACoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzqCoQEeSCAKBl1ccyNQ">
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnI_ASoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnI_AioQEeSCAKBl1ccyNQ"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_LnHw4SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnYUACoQEeSCAKBl1ccyNQ" x="12" y="-48" width="49" height="56"/>
- </children>
- <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm-m8SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXs8CoQEeSCAKBl1ccyNQ" x="516" y="348" width="183" height="87"/>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LmzAwSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnPKECoQEeSCAKBl1ccyNQ" x="144" y="324" width="49" height="49"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm2rICoQEeSCAKBl1ccyNQ" type="2001" element="_LmmzgCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm3SMCoQEeSCAKBl1ccyNQ" type="5002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnQ_QSoQEeSCAKBl1ccyNQ" x="-1"/>
</children>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_Lmv9cioQEeSCAKBl1ccyNQ"/>
- <edges xmi:type="notation:Edge" xmi:id="_LnLbQCoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzsSoQEeSCAKBl1ccyNQ" source="_LnDfcCoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnMpYCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnTbgyoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnN3gCoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnN3gSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnPFoCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnPFoSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnLbQSoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnLbQioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnTbgioQEeSCAKBl1ccyNQ" points="[0, 0, -252, -20]$[47, 48, -205, 28]$[179, -12, -73, -32]$[251, 19, -1, -1]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnSwACoQEeSCAKBl1ccyNQ" id="(1.0,0.1590909090909091)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnTXECoQEeSCAKBl1ccyNQ" id="(0.010256410256410256,0.7387387387387387)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnTXESoQEeSCAKBl1ccyNQ" type="4001" element="_LmmztioQEeSCAKBl1ccyNQ" source="_Lm6VgCoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnT-ICoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnUpoSoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnT-IioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnT-IyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnT-JCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnUlMCoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnTXEioQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnTXEyoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnUpoCoQEeSCAKBl1ccyNQ" points="[0, 0, -360, -28]$[306, -57, -54, -85]$[349, 12, -11, -16]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnUlMSoQEeSCAKBl1ccyNQ" id="(0.9824561403508771,0.1724137931034483)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnUlMioQEeSCAKBl1ccyNQ" id="(0.6307692307692307,0.009009009009009009)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnVMQCoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzuyoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnVMRCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnY7EioQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnVzUCoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnVzUSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnVzUioQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnVzUyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnVMQSoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnVMQioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnY7ESoQEeSCAKBl1ccyNQ" points="[0, 0, 60, 108]$[0, -72, 60, 36]$[-80, -72, -20, 36]$[-80, -143, -20, -35]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnWaYCoQEeSCAKBl1ccyNQ" id="(0.7934153844573025,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnWaYSoQEeSCAKBl1ccyNQ" id="(0.7440348283155057,1.3243243285911288)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnWaYioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzwCoQEeSCAKBl1ccyNQ" source="_Lm9Y0CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnXBcCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXF4CoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnXBcioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnXBcyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnXBdCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnXBdSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnWaYyoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnWaZCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnWe0ioQEeSCAKBl1ccyNQ" points="[-1, 1, 159, -33]$[-132, 28, 28, -6]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnXogCoQEeSCAKBl1ccyNQ" id="(0.013605442408570052,0.17333332961400358)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnXogSoQEeSCAKBl1ccyNQ" id="(0.09090909090909091,0.12244897959183673)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnXogioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzxSoQEeSCAKBl1ccyNQ" source="_Lm9Y0CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnYPkCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXF4ioQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnYPkioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnYPkyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnYPlCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnYPlSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnXogyoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnXohCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnXF4SoQEeSCAKBl1ccyNQ" points="[0, -32, 119, -25]$[-119, -7, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnY2oCoQEeSCAKBl1ccyNQ" id="(0.0,0.7466666666666667)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnY2oSoQEeSCAKBl1ccyNQ" id="(0.9772727272727273,0.7551020408163265)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnY2oioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzyioQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm-m8CoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnZdsCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQ_QyoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnZdsioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnZdsyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnaEwCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnaEwSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnY2oyoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnY2pCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnQ_QioQEeSCAKBl1ccyNQ" points="[0, 0, 72, -35]$[-131, 10, -59, -25]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnaEwioQEeSCAKBl1ccyNQ" id="(0.0,0.5901639344262295)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnaEwyoQEeSCAKBl1ccyNQ" id="(0.9836065573770492,0.47126436781609193)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_Lnar0CoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzzyoQEeSCAKBl1ccyNQ" source="_LmzAwCoQEeSCAKBl1ccyNQ" target="_Lm-m8CoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lnar1CoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQYMCoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnbS4CoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnbS4SoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnbS4ioQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnbS4yoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnar0SoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Lnar0ioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnPxICoQEeSCAKBl1ccyNQ" points="[0, 0, -323, -59]$[323, 59, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnb58CoQEeSCAKBl1ccyNQ" id="(1.0,0.4897959183673469)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnb58SoQEeSCAKBl1ccyNQ" id="(0.0,0.702309387099959)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_Lnb58ioQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz1CoQEeSCAKBl1ccyNQ" source="_LnDfcCoQEeSCAKBl1ccyNQ" target="_LmzAwCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnchACoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnUCkSoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LndIECoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LndIESoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LndIEioQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LndIEyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnb58yoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Lnb59CoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnUCkCoQEeSCAKBl1ccyNQ" points="[0, 0, -12, -131]$[12, 131, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LndvICoQEeSCAKBl1ccyNQ" id="(0.19672131147540983,1.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LndvISoQEeSCAKBl1ccyNQ" id="(0.4897959183673469,0.0)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LneWMCoQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz2SoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_Lm9Y0CoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lne9QCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnZiISoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lne9QioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lne9QyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnfkUCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnfkUSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LneWMSoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LneWMioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnZiICoQEeSCAKBl1ccyNQ" points="[-59, -9, -238, 158]$[47, -9, -132, 158]$[47, -75, -132, 92]$[163, -75, -16, 92]$[163, -202, -16, -35]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LngLYCoQEeSCAKBl1ccyNQ" id="(0.9781420765027322,0.40229885057471265)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LngLYSoQEeSCAKBl1ccyNQ" id="(0.9058016373845371,1.479999968242646)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LngLYioQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz3ioQEeSCAKBl1ccyNQ" source="_Lm8KsyoQEeSCAKBl1ccyNQ" target="_Lm6VgCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnhZgCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnWe0CoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnhZgioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnhZgyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_LnhZhCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnhZhSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LngycCoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LngycSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnV3wSoQEeSCAKBl1ccyNQ" points="[0, 0, 228, 35]$[-36, -82, 192, -47]$[-192, -10, 36, 25]$[-227, -35, 1, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LninoCoQEeSCAKBl1ccyNQ" id="(0.0,0.42342342342342343)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LninoSoQEeSCAKBl1ccyNQ" id="(0.9941520467836257,0.41379310344827586)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LninoioQEeSCAKBl1ccyNQ" type="4001" element="_LmnalCoQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm9Y0CoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnjOsCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnRmUSoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lnj1wCoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnj1wSoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lnj1wioQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnj1wyoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LninoyoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LninpCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnRmUCoQEeSCAKBl1ccyNQ" points="[0, 0, -59, 120]$[76, -155, 17, -35]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnkc0CoQEeSCAKBl1ccyNQ" id="(0.5901639344262295,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnkc0SoQEeSCAKBl1ccyNQ" id="(0.9387755102040817,0.96)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnlD4CoQEeSCAKBl1ccyNQ" type="4001" element="_LmnamSoQEeSCAKBl1ccyNQ" source="_Lm35QCoQEeSCAKBl1ccyNQ" target="_Lm2rICoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lnlq8CoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnSNYyoQEeSCAKBl1ccyNQ" y="-10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lnlq8ioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnlq8yoQEeSCAKBl1ccyNQ" y="10"/>
- </children>
- <children xmi:type="notation:Node" xmi:id="_Lnlq9CoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnlq9SoQEeSCAKBl1ccyNQ" y="10"/>
+ <children xmi:type="notation:Node" xmi:id="_LnCRUCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzgSoQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnCRUSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnCRUioQEeSCAKBl1ccyNQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm2rISoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQ_QCoQEeSCAKBl1ccyNQ" x="828" y="336" width="61" height="61"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm35QCoQEeSCAKBl1ccyNQ" type="2001" element="_LmmzhSoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm4gUCoQEeSCAKBl1ccyNQ" type="5002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnSNYSoQEeSCAKBl1ccyNQ" x="-1"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnCRUyoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzhioQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnCRVCoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnCRVSoQEeSCAKBl1ccyNQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm35QSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnSNYCoQEeSCAKBl1ccyNQ" x="888" y="432" width="30" height="30"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm6VgCoQEeSCAKBl1ccyNQ" type="2002" element="_LmmziioQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm7joCoQEeSCAKBl1ccyNQ" type="5006"/>
+ <children xmi:type="notation:Node" xmi:id="_Lm8KsCoQEeSCAKBl1ccyNQ" type="7001">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lm8KsSoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm8KsioQEeSCAKBl1ccyNQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnDfcCoQEeSCAKBl1ccyNQ" type="3012" element="_LmmziyoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnEGgCoQEeSCAKBl1ccyNQ" type="5010">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnTbgSoQEeSCAKBl1ccyNQ" x="-1"/>
</children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnlD4SoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnlD4ioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnSNYioQEeSCAKBl1ccyNQ" points="[0, 0, 23, 60]$[24, -60, 47, 0]$[-23, -60, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnmSACoQEeSCAKBl1ccyNQ" id="(0.8,0.03333333333333333)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnmSASoQEeSCAKBl1ccyNQ" id="(1.0,0.5901639344262295)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_Lnm5ECoQEeSCAKBl1ccyNQ" type="4001" element="_LmnanioQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm35QCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lnm5FCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnRmUyoQEeSCAKBl1ccyNQ" y="-10"/>
+ <children xmi:type="notation:Node" xmi:id="_LnFUoCoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzjCoQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnFUoSoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnFUoioQEeSCAKBl1ccyNQ"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_LnngICoQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnngISoQEeSCAKBl1ccyNQ" y="10"/>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnDfcSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnTbgCoQEeSCAKBl1ccyNQ" x="84" y="77" width="61" height="44"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm6VgSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnS0cCoQEeSCAKBl1ccyNQ" x="60" y="72" width="171" height="87"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm8KsyoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzlSoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm8xwCoQEeSCAKBl1ccyNQ" type="5006"/>
+ <children xmi:type="notation:Node" xmi:id="_Lm8xwSoQEeSCAKBl1ccyNQ" type="7001">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lm8xwioQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm8xwyoQEeSCAKBl1ccyNQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnF7sCoQEeSCAKBl1ccyNQ" type="3012" element="_LmmzlioQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnGiwCoQEeSCAKBl1ccyNQ" type="5010">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnV3wCoQEeSCAKBl1ccyNQ" x="-1"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_LnngIioQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnngIyoQEeSCAKBl1ccyNQ" y="10"/>
+ <children xmi:type="notation:Node" xmi:id="_LnHJ0CoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzlyoQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnHJ0SoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnHJ0ioQEeSCAKBl1ccyNQ"/>
</children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnm5ESoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_Lnm5EioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnRmUioQEeSCAKBl1ccyNQ" points="[0, 0, -41, -52]$[12, 35, -29, -17]$[36, 49, -5, -3]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnoHMCoQEeSCAKBl1ccyNQ" id="(0.39344262295081966,0.9672131147540983)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnoHMSoQEeSCAKBl1ccyNQ" id="(0.16666666666666666,0.5666666666666667)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnoHMioQEeSCAKBl1ccyNQ" type="4001" element="_LmnaoyoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_LnouQCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnaJMCoQEeSCAKBl1ccyNQ" y="-10"/>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnF7sSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnVQsSoQEeSCAKBl1ccyNQ" x="185" y="52" width="44" height="49"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm8KtCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnVQsCoQEeSCAKBl1ccyNQ" x="456" y="96" width="195" height="111"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm9Y0CoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzoCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm9_4CoQEeSCAKBl1ccyNQ" type="5006"/>
+ <children xmi:type="notation:Node" xmi:id="_Lm9_4SoQEeSCAKBl1ccyNQ" type="7001">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lm9_4ioQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm9_4yoQEeSCAKBl1ccyNQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_dUPdEFHiEeeoGv7ZuRd91Q" type="3012" element="_dUGTIFHiEeeoGv7ZuRd91Q">
+ <children xmi:type="notation:Node" xmi:id="_dUQrMFHiEeeoGv7ZuRd91Q" type="5010">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_dUQrMVHiEeeoGv7ZuRd91Q" x="-1"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_LnouQioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnouQyoQEeSCAKBl1ccyNQ" y="10"/>
+ <children xmi:type="notation:Node" xmi:id="_dURSQFHiEeeoGv7ZuRd91Q" type="3003" element="_dUGTIVHiEeeoGv7ZuRd91Q">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_dURSQVHiEeeoGv7ZuRd91Q" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dURSQlHiEeeoGv7ZuRd91Q"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_LnouRCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnouRSoQEeSCAKBl1ccyNQ" y="10"/>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_dUPdEVHiEeeoGv7ZuRd91Q" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dUPdElHiEeeoGv7ZuRd91Q" x="137" y="27" width="56" height="35"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm9Y0SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnWe0SoQEeSCAKBl1ccyNQ" x="804" y="108" width="147" height="75"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lm-m8CoQEeSCAKBl1ccyNQ" type="2002" element="_LmmzpioQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lm_OACoQEeSCAKBl1ccyNQ" type="5006"/>
+ <children xmi:type="notation:Node" xmi:id="_Lm_1ECoQEeSCAKBl1ccyNQ" type="7001">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Lm_1ESoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Lm_1EioQEeSCAKBl1ccyNQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnHw4CoQEeSCAKBl1ccyNQ" type="3012" element="_LmmzpyoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnIX8CoQEeSCAKBl1ccyNQ" type="5010">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MnYUASoQEeSCAKBl1ccyNQ" x="-1"/>
</children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnoHMyoQEeSCAKBl1ccyNQ"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnoHNCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnZiIioQEeSCAKBl1ccyNQ" points="[-101, 0, -42, 151]$[-59, -151, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnpVUCoQEeSCAKBl1ccyNQ" id="(0.5792349726775956,0.011494252873563218)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnpVUSoQEeSCAKBl1ccyNQ" id="(0.4318181818181818,1.0)"/>
- </edges>
- <edges xmi:type="notation:Edge" xmi:id="_LnpVUioQEeSCAKBl1ccyNQ" type="4001" element="_LmnaqCoQEeSCAKBl1ccyNQ" source="_LnHw4CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
- <children xmi:type="notation:Node" xmi:id="_Lnp8YCoQEeSCAKBl1ccyNQ" type="6001">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnY7ECoQEeSCAKBl1ccyNQ" y="-10"/>
+ <children xmi:type="notation:Node" xmi:id="_LnI_ACoQEeSCAKBl1ccyNQ" type="3003" element="_LmmzqCoQEeSCAKBl1ccyNQ">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnI_ASoQEeSCAKBl1ccyNQ" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnI_AioQEeSCAKBl1ccyNQ"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_Lnp8YioQEeSCAKBl1ccyNQ" type="6002">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnp8YyoQEeSCAKBl1ccyNQ" y="10"/>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_LnHw4SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnYUACoQEeSCAKBl1ccyNQ" x="12" y="-48" width="49" height="56"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Lm-m8SoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXs8CoQEeSCAKBl1ccyNQ" x="516" y="348" width="183" height="87"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Yst_sFHfEeeoGv7ZuRd91Q" type="2002" element="_YsevIFHfEeeoGv7ZuRd91Q">
+ <children xmi:type="notation:Node" xmi:id="_Ysv04FHfEeeoGv7ZuRd91Q" type="5006"/>
+ <children xmi:type="notation:Node" xmi:id="_YsxDAFHfEeeoGv7ZuRd91Q" type="7001">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_YsxDAVHfEeeoGv7ZuRd91Q"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_YsxDAlHfEeeoGv7ZuRd91Q"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_iNvioFHiEeeoGv7ZuRd91Q" type="3012" element="_iNlxoFHiEeeoGv7ZuRd91Q">
+ <children xmi:type="notation:Node" xmi:id="_iNwJsFHiEeeoGv7ZuRd91Q" type="5010">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_iNwJsVHiEeeoGv7ZuRd91Q" x="-1"/>
</children>
- <children xmi:type="notation:Node" xmi:id="_Lnp8ZCoQEeSCAKBl1ccyNQ" type="6003">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnp8ZSoQEeSCAKBl1ccyNQ" y="10"/>
+ <children xmi:type="notation:Node" xmi:id="_iNwwwFHiEeeoGv7ZuRd91Q" type="3003" element="_iNlxoVHiEeeoGv7ZuRd91Q">
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_iNwwwVHiEeeoGv7ZuRd91Q" fontName="Cantarell"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iNwwwlHiEeeoGv7ZuRd91Q"/>
</children>
- <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnpVUyoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
- <styles xmi:type="notation:FontStyle" xmi:id="_LnpVVCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnYUAioQEeSCAKBl1ccyNQ" points="[0, 0, -113, 128]$[0, -141, -113, -13]$[113, -141, 0, -13]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnqjcCoQEeSCAKBl1ccyNQ" id="(0.0,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnqjcSoQEeSCAKBl1ccyNQ" id="(0.0,0.4897959183673469)"/>
- </edges>
- </data>
- </ownedAnnotationEntries>
- <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmMcSoQEeSCAKBl1ccyNQ" name="node1" outgoingEdges="_LmmzzyoQEeSCAKBl1ccyNQ" incomingEdges="_Lmmz1CoQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.0"/>
- <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.0"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmMcioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmMcyoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmMdCoQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmMdSoQEeSCAKBl1ccyNQ" red="194" green="239" blue="255"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmzgCoQEeSCAKBl1ccyNQ" name="node2" outgoingEdges="_LmmzyioQEeSCAKBl1ccyNQ _LmnalCoQEeSCAKBl1ccyNQ _LmnanioQEeSCAKBl1ccyNQ" incomingEdges="_LmnamSoQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.1"/>
- <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.1"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzgSoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzgioQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzgyoQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmzhCoQEeSCAKBl1ccyNQ" red="194" green="239" blue="255"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmzhSoQEeSCAKBl1ccyNQ" name="node3" outgoingEdges="_LmnamSoQEeSCAKBl1ccyNQ" incomingEdges="_LmnanioQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.2"/>
- <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.2"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzhioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzhyoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmziCoQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmziSoQEeSCAKBl1ccyNQ" red="194" green="239" blue="255"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmziioQEeSCAKBl1ccyNQ" name="container1" outgoingEdges="_LmmztioQEeSCAKBl1ccyNQ" incomingEdges="_Lmmz3ioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.0"/>
- <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.0"/>
- <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmziyoQEeSCAKBl1ccyNQ" name="border1" outgoingEdges="_LmmzsSoQEeSCAKBl1ccyNQ _Lmmz1CoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.0/@elements.0"/>
- <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.0/@elements.0"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzjCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzjSoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzjioQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmzjyoQEeSCAKBl1ccyNQ" red="253" green="206" blue="137"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
- </ownedBorderedNodes>
- <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzkCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzkSoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzkioQEeSCAKBl1ccyNQ"/>
- <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzkyoQEeSCAKBl1ccyNQ" red="255" green="255" blue="255"/>
- <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzlCoQEeSCAKBl1ccyNQ" red="204" green="242" blue="166"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzlSoQEeSCAKBl1ccyNQ" name="container2" outgoingEdges="_Lmmz3ioQEeSCAKBl1ccyNQ" incomingEdges="_LmmzsSoQEeSCAKBl1ccyNQ _LmmztioQEeSCAKBl1ccyNQ _LmmzuyoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.1"/>
- <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.1"/>
- <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmzlioQEeSCAKBl1ccyNQ" name="border2" incomingEdges="_LmmzwCoQEeSCAKBl1ccyNQ _LmmzxSoQEeSCAKBl1ccyNQ _LmnaoyoQEeSCAKBl1ccyNQ _LmnaqCoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.1/@elements.0"/>
- <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.1/@elements.0"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzlyoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzmCoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzmSoQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmzmioQEeSCAKBl1ccyNQ" red="253" green="206" blue="137"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
- </ownedBorderedNodes>
- <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzmyoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmznCoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmznSoQEeSCAKBl1ccyNQ"/>
- <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmznioQEeSCAKBl1ccyNQ" red="255" green="255" blue="255"/>
- <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmznyoQEeSCAKBl1ccyNQ" red="204" green="242" blue="166"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzoCoQEeSCAKBl1ccyNQ" name="container3" outgoingEdges="_LmmzwCoQEeSCAKBl1ccyNQ _LmmzxSoQEeSCAKBl1ccyNQ" incomingEdges="_Lmmz2SoQEeSCAKBl1ccyNQ _LmnalCoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.2"/>
- <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.2"/>
- <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzoSoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzoioQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzoyoQEeSCAKBl1ccyNQ"/>
- <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzpCoQEeSCAKBl1ccyNQ" red="255" green="255" blue="255"/>
- <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzpSoQEeSCAKBl1ccyNQ" red="204" green="242" blue="166"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzpioQEeSCAKBl1ccyNQ" name="container4" outgoingEdges="_LmmzuyoQEeSCAKBl1ccyNQ _Lmmz2SoQEeSCAKBl1ccyNQ _LmnaoyoQEeSCAKBl1ccyNQ" incomingEdges="_LmmzyioQEeSCAKBl1ccyNQ _LmmzzyoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.3"/>
- <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.3"/>
- <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmzpyoQEeSCAKBl1ccyNQ" name="border3" outgoingEdges="_LmnaqCoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
- <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.3/@elements.0"/>
- <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.3/@elements.0"/>
- <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzqCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzqSoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzqioQEeSCAKBl1ccyNQ"/>
- <color xmi:type="viewpoint:RGBValues" xmi:id="_LmmzqyoQEeSCAKBl1ccyNQ" red="253" green="206" blue="137"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
- </ownedBorderedNodes>
- <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzrCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzrSoQEeSCAKBl1ccyNQ"/>
- <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
- <borderColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzrioQEeSCAKBl1ccyNQ"/>
- <backgroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzryoQEeSCAKBl1ccyNQ" red="255" green="255" blue="255"/>
- <foregroundColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzsCoQEeSCAKBl1ccyNQ" red="204" green="242" blue="166"/>
- </ownedStyle>
- <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzsSoQEeSCAKBl1ccyNQ" name="edge3" sourceNode="_LmmziyoQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.0"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.0"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzsioQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzsyoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmztCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmztSoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmztioQEeSCAKBl1ccyNQ" name="edge1" sourceNode="_LmmziioQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.1"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.1"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmztyoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzuCoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzuSoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzuioQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzuyoQEeSCAKBl1ccyNQ" name="edge7" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.2"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.2"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzvCoQEeSCAKBl1ccyNQ" routingStyle="manhattan">
- <customFeatures>routingStyle</customFeatures>
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzvSoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzvioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzvyoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzwCoQEeSCAKBl1ccyNQ" name="edge9" sourceNode="_LmmzoCoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.3"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.3"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzwSoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzwioQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzwyoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzxCoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzxSoQEeSCAKBl1ccyNQ" name="edge10" sourceNode="_LmmzoCoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.4"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.4"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzxioQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzxyoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzyCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzySoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzyioQEeSCAKBl1ccyNQ" name="edge13" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzpioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.5"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.5"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzyyoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzzCoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzzSoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmmzzioQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzzyoQEeSCAKBl1ccyNQ" name="edge5" sourceNode="_LmmMcSoQEeSCAKBl1ccyNQ" targetNode="_LmmzpioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.6"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.6"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz0CoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz0SoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz0ioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz0yoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz1CoQEeSCAKBl1ccyNQ" name="edge4" sourceNode="_LmmziyoQEeSCAKBl1ccyNQ" targetNode="_LmmMcSoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.7"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.7"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz1SoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz1ioQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz1yoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz2CoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz2SoQEeSCAKBl1ccyNQ" name="edge11" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzoCoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.8"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.8"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz2ioQEeSCAKBl1ccyNQ" routingStyle="manhattan">
- <customFeatures>routingStyle</customFeatures>
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz2yoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz3CoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_Lmmz3SoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz3ioQEeSCAKBl1ccyNQ" name="edge2" sourceNode="_LmmzlSoQEeSCAKBl1ccyNQ" targetNode="_LmmziioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.9"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.9"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnakCoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnakSoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnakioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnakyoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
- </ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnalCoQEeSCAKBl1ccyNQ" name="edge12" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzoCoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.10"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.10"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnalSoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnalioQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnalyoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnamCoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_iNvioVHiEeeoGv7ZuRd91Q" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iNviolHiEeeoGv7ZuRd91Q" x="93" y="45" width="18" height="16"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Yst_sVHfEeeoGv7ZuRd91Q" fontName="Cantarell" fontHeight="8"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yst_slHfEeeoGv7ZuRd91Q" x="1005" y="215" width="103" height="83"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Lmv9cioQEeSCAKBl1ccyNQ"/>
+ <edges xmi:type="notation:Edge" xmi:id="_LnLbQCoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzsSoQEeSCAKBl1ccyNQ" source="_LnDfcCoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnMpYCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnTbgyoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnN3gCoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnN3gSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnPFoCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnPFoSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnLbQSoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnLbQioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnTbgioQEeSCAKBl1ccyNQ" points="[0, 0, -252, -20]$[47, 48, -205, 28]$[179, -12, -73, -32]$[251, 19, -1, -1]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnSwACoQEeSCAKBl1ccyNQ" id="(1.0,0.1590909090909091)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnTXECoQEeSCAKBl1ccyNQ" id="(0.010256410256410256,0.7387387387387387)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnTXESoQEeSCAKBl1ccyNQ" type="4001" element="_LmmztioQEeSCAKBl1ccyNQ" source="_Lm6VgCoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnT-ICoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnUpoSoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnT-IioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnT-IyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnT-JCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnUlMCoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnTXEioQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnTXEyoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnUpoCoQEeSCAKBl1ccyNQ" points="[0, 0, -360, -28]$[306, -57, -54, -85]$[349, 12, -11, -16]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnUlMSoQEeSCAKBl1ccyNQ" id="(0.9824561403508771,0.1724137931034483)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnUlMioQEeSCAKBl1ccyNQ" id="(0.6307692307692307,0.009009009009009009)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnVMQCoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzuyoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_Lm8KsyoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnVMRCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnY7EioQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnVzUCoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnVzUSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnVzUioQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnVzUyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnVMQSoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnVMQioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnY7ESoQEeSCAKBl1ccyNQ" points="[0, 0, 60, 108]$[0, -72, 60, 36]$[-80, -72, -20, 36]$[-80, -143, -20, -35]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnWaYCoQEeSCAKBl1ccyNQ" id="(0.7934153844573025,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnWaYSoQEeSCAKBl1ccyNQ" id="(0.7440348283155057,1.3243243285911288)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnWaYioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzwCoQEeSCAKBl1ccyNQ" source="_Lm9Y0CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnXBcCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXF4CoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnXBcioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnXBcyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnXBdCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnXBdSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnWaYyoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnWaZCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnWe0ioQEeSCAKBl1ccyNQ" points="[-1, 1, 159, -33]$[-132, 28, 28, -6]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnXogCoQEeSCAKBl1ccyNQ" id="(0.013605442408570052,0.17333332961400358)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnXogSoQEeSCAKBl1ccyNQ" id="(0.09090909090909091,0.12244897959183673)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnXogioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzxSoQEeSCAKBl1ccyNQ" source="_Lm9Y0CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnYPkCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnXF4ioQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnYPkioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnYPkyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnYPlCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnYPlSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnXogyoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnXohCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnXF4SoQEeSCAKBl1ccyNQ" points="[0, -32, 119, -25]$[-119, -7, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnY2oCoQEeSCAKBl1ccyNQ" id="(0.0,0.7466666666666667)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnY2oSoQEeSCAKBl1ccyNQ" id="(0.9772727272727273,0.7551020408163265)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnY2oioQEeSCAKBl1ccyNQ" type="4001" element="_LmmzyioQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm-m8CoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnZdsCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQ_QyoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnZdsioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnZdsyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnaEwCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnaEwSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnY2oyoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnY2pCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnQ_QioQEeSCAKBl1ccyNQ" points="[0, 0, 72, -35]$[-131, 10, -59, -25]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnaEwioQEeSCAKBl1ccyNQ" id="(0.0,0.5901639344262295)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnaEwyoQEeSCAKBl1ccyNQ" id="(0.9836065573770492,0.47126436781609193)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Lnar0CoQEeSCAKBl1ccyNQ" type="4001" element="_LmmzzyoQEeSCAKBl1ccyNQ" source="_LmzAwCoQEeSCAKBl1ccyNQ" target="_Lm-m8CoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lnar1CoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnQYMCoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnbS4CoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnbS4SoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnbS4ioQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnbS4yoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnar0SoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lnar0ioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnPxICoQEeSCAKBl1ccyNQ" points="[0, 0, -323, -59]$[323, 59, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnb58CoQEeSCAKBl1ccyNQ" id="(1.0,0.4897959183673469)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnb58SoQEeSCAKBl1ccyNQ" id="(0.0,0.702309387099959)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Lnb58ioQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz1CoQEeSCAKBl1ccyNQ" source="_LnDfcCoQEeSCAKBl1ccyNQ" target="_LmzAwCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnchACoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnUCkSoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LndIECoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LndIESoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LndIEioQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LndIEyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnb58yoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lnb59CoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnUCkCoQEeSCAKBl1ccyNQ" points="[0, 0, -12, -131]$[12, 131, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LndvICoQEeSCAKBl1ccyNQ" id="(0.19672131147540983,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LndvISoQEeSCAKBl1ccyNQ" id="(0.4897959183673469,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LneWMCoQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz2SoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_Lm9Y0CoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lne9QCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnZiISoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lne9QioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lne9QyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnfkUCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnfkUSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LneWMSoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LneWMioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnZiICoQEeSCAKBl1ccyNQ" points="[-59, -9, -238, 158]$[47, -9, -132, 158]$[47, -75, -132, 92]$[163, -75, -16, 92]$[163, -202, -16, -35]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LngLYCoQEeSCAKBl1ccyNQ" id="(0.9781420765027322,0.40229885057471265)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LngLYSoQEeSCAKBl1ccyNQ" id="(0.9058016373845371,1.479999968242646)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LngLYioQEeSCAKBl1ccyNQ" type="4001" element="_Lmmz3ioQEeSCAKBl1ccyNQ" source="_Lm8KsyoQEeSCAKBl1ccyNQ" target="_Lm6VgCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnhZgCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnWe0CoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnhZgioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnhZgyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnhZhCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnhZhSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LngycCoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LngycSoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnV3wSoQEeSCAKBl1ccyNQ" points="[0, 0, 228, 35]$[-36, -82, 192, -47]$[-192, -10, 36, 25]$[-227, -35, 1, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LninoCoQEeSCAKBl1ccyNQ" id="(0.0,0.42342342342342343)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LninoSoQEeSCAKBl1ccyNQ" id="(0.9941520467836257,0.41379310344827586)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LninoioQEeSCAKBl1ccyNQ" type="4001" element="_LmnalCoQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm9Y0CoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnjOsCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnRmUSoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnj1wCoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnj1wSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnj1wioQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnj1wyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LninoyoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LninpCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnRmUCoQEeSCAKBl1ccyNQ" points="[0, 0, -59, 120]$[76, -155, 17, -35]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnkc0CoQEeSCAKBl1ccyNQ" id="(0.5901639344262295,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Lnkc0SoQEeSCAKBl1ccyNQ" id="(0.9387755102040817,0.96)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnlD4CoQEeSCAKBl1ccyNQ" type="4001" element="_LmnamSoQEeSCAKBl1ccyNQ" source="_Lm35QCoQEeSCAKBl1ccyNQ" target="_Lm2rICoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lnlq8CoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnSNYyoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnlq8ioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnlq8yoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnlq9CoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnlq9SoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnlD4SoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnlD4ioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnSNYioQEeSCAKBl1ccyNQ" points="[0, 0, 23, 60]$[24, -60, 47, 0]$[-23, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnmSACoQEeSCAKBl1ccyNQ" id="(0.8,0.03333333333333333)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnmSASoQEeSCAKBl1ccyNQ" id="(1.0,0.5901639344262295)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Lnm5ECoQEeSCAKBl1ccyNQ" type="4001" element="_LmnanioQEeSCAKBl1ccyNQ" source="_Lm2rICoQEeSCAKBl1ccyNQ" target="_Lm35QCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lnm5FCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnRmUyoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnngICoQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnngISoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnngIioQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnngIyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Lnm5ESoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Lnm5EioQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnRmUioQEeSCAKBl1ccyNQ" points="[0, 0, -41, -52]$[12, 35, -29, -17]$[36, 49, -5, -3]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnoHMCoQEeSCAKBl1ccyNQ" id="(0.39344262295081966,0.9672131147540983)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnoHMSoQEeSCAKBl1ccyNQ" id="(0.16666666666666666,0.5666666666666667)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnoHMioQEeSCAKBl1ccyNQ" type="4001" element="_LmnaoyoQEeSCAKBl1ccyNQ" source="_Lm-m8CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_LnouQCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnaJMCoQEeSCAKBl1ccyNQ" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnouQioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnouQyoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_LnouRCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LnouRSoQEeSCAKBl1ccyNQ" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnoHMyoQEeSCAKBl1ccyNQ"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnoHNCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnZiIioQEeSCAKBl1ccyNQ" points="[-101, 0, -42, 151]$[-59, -151, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnpVUCoQEeSCAKBl1ccyNQ" id="(0.5792349726775956,0.011494252873563218)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnpVUSoQEeSCAKBl1ccyNQ" id="(0.4318181818181818,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_LnpVUioQEeSCAKBl1ccyNQ" type="4001" element="_LmnaqCoQEeSCAKBl1ccyNQ" source="_LnHw4CoQEeSCAKBl1ccyNQ" target="_LnF7sCoQEeSCAKBl1ccyNQ">
+ <children xmi:type="notation:Node" xmi:id="_Lnp8YCoQEeSCAKBl1ccyNQ" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MnY7ECoQEeSCAKBl1ccyNQ" x="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnp8YioQEeSCAKBl1ccyNQ" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnp8YyoQEeSCAKBl1ccyNQ" x="-9" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Lnp8ZCoQEeSCAKBl1ccyNQ" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lnp8ZSoQEeSCAKBl1ccyNQ" x="21" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_LnpVUyoQEeSCAKBl1ccyNQ" routing="Rectilinear"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_LnpVVCoQEeSCAKBl1ccyNQ" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MnYUAioQEeSCAKBl1ccyNQ" points="[0, 0, -113, 128]$[0, -25, -113, 103]$[-63, -25, -176, 103]$[-72, -55, -185, 73]$[0, -55, -113, 73]$[0, -141, -113, -13]$[113, -128, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnqjcCoQEeSCAKBl1ccyNQ" id="(0.0,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LnqjcSoQEeSCAKBl1ccyNQ" id="(0.0,0.4897959183673469)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_me3g8FHfEeeoGv7ZuRd91Q" type="4001" element="_meu-EFHfEeeoGv7ZuRd91Q" source="_Lm9Y0CoQEeSCAKBl1ccyNQ" target="_Yst_sFHfEeeoGv7ZuRd91Q">
+ <children xmi:type="notation:Node" xmi:id="_me3g9FHfEeeoGv7ZuRd91Q" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_me3g9VHfEeeoGv7ZuRd91Q" x="-37" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_me4IAFHfEeeoGv7ZuRd91Q" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_me4IAVHfEeeoGv7ZuRd91Q" x="-36" y="13"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_me4IAlHfEeeoGv7ZuRd91Q" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_me4IA1HfEeeoGv7ZuRd91Q" x="48" y="-2"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_me3g8VHfEeeoGv7ZuRd91Q" routing="Rectilinear"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_me3g8lHfEeeoGv7ZuRd91Q" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_me3g81HfEeeoGv7ZuRd91Q" points="[0, 0, -134, -85]$[61, 0, -73, -85]$[61, -65, -73, -150]$[111, -65, -23, -150]$[111, 0, -23, -85]$[166, 0, 32, -85]$[166, 85, 32, 0]$[157, 85, 23, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_me4IBFHfEeeoGv7ZuRd91Q" id="(1.0,0.3013698630136986)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_me4IBVHfEeeoGv7ZuRd91Q" id="(0.7722772277227723,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_r5Sa4FHiEeeoGv7ZuRd91Q" type="4001" element="_r5DxYFHiEeeoGv7ZuRd91Q" source="_dUPdEFHiEeeoGv7ZuRd91Q" target="_iNvioFHiEeeoGv7ZuRd91Q">
+ <children xmi:type="notation:Node" xmi:id="_r5Sa5FHiEeeoGv7ZuRd91Q" type="6001">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPt94FHiEeeoGv7ZuRd91Q" x="-43" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_r5Sa5lHiEeeoGv7ZuRd91Q" type="6002">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPt94VHiEeeoGv7ZuRd91Q" x="-17" y="-5"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_r5Sa6FHiEeeoGv7ZuRd91Q" type="6003">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPt94lHiEeeoGv7ZuRd91Q" x="-27" y="55"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_r5Sa4VHiEeeoGv7ZuRd91Q" routing="Rectilinear"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_r5Sa4lHiEeeoGv7ZuRd91Q" fontName="Cantarell" fontHeight="8"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_r5Sa41HiEeeoGv7ZuRd91Q" points="[0, 0, -125, -90]$[0, 25, -125, -65]$[125, 25, 0, -65]$[125, 90, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r5TB8FHiEeeoGv7ZuRd91Q" id="(0.6964285714285714,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_r5TB8VHiEeeoGv7ZuRd91Q" id="(0.3888888888888889,0.0)"/>
+ </edges>
+ </data>
+ </ownedAnnotationEntries>
+ <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_JEuXIVHfEeeoGv7ZuRd91Q" source="DANNOTATION_CUSTOMIZATION_KEY">
+ <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_JEuXIlHfEeeoGv7ZuRd91Q"/>
+ </ownedAnnotationEntries>
+ <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmMcSoQEeSCAKBl1ccyNQ" name="node1" outgoingEdges="_LmmzzyoQEeSCAKBl1ccyNQ" incomingEdges="_Lmmz1CoQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.0"/>
+ <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.0"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmMcioQEeSCAKBl1ccyNQ" color="194,239,255">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmzgCoQEeSCAKBl1ccyNQ" name="node2" outgoingEdges="_LmmzyioQEeSCAKBl1ccyNQ _LmnalCoQEeSCAKBl1ccyNQ _LmnanioQEeSCAKBl1ccyNQ" incomingEdges="_LmnamSoQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.1"/>
+ <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.1"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzgSoQEeSCAKBl1ccyNQ" color="194,239,255">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNode" xmi:id="_LmmzhSoQEeSCAKBl1ccyNQ" name="node3" outgoingEdges="_LmnamSoQEeSCAKBl1ccyNQ" incomingEdges="_LmnanioQEeSCAKBl1ccyNQ" width="3" height="3" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.2"/>
+ <semanticElements xmi:type="migrationmodeler:Node" href="useCase.migrationmodeler#//@representations.0/@nodes.2"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzhioQEeSCAKBl1ccyNQ" color="194,239,255">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@nodeMappings[name='node']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmziioQEeSCAKBl1ccyNQ" name="container1" outgoingEdges="_LmmztioQEeSCAKBl1ccyNQ" incomingEdges="_Lmmz3ioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.0"/>
+ <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.0"/>
+ <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmziyoQEeSCAKBl1ccyNQ" name="border1" outgoingEdges="_LmmzsSoQEeSCAKBl1ccyNQ _Lmmz1CoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.0/@elements.0"/>
+ <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.0/@elements.0"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzjCoQEeSCAKBl1ccyNQ" color="253,206,137">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
</ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnamSoQEeSCAKBl1ccyNQ" name="edge15" sourceNode="_LmmzhSoQEeSCAKBl1ccyNQ" targetNode="_LmmzgCoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.11"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.11"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnamioQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnamyoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnanCoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnanSoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
+ </ownedBorderedNodes>
+ <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzkCoQEeSCAKBl1ccyNQ" borderSize="1" borderSizeComputationExpression="1" foregroundColor="204,242,166">
+ <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzlSoQEeSCAKBl1ccyNQ" name="container2" outgoingEdges="_Lmmz3ioQEeSCAKBl1ccyNQ" incomingEdges="_LmmzsSoQEeSCAKBl1ccyNQ _LmmztioQEeSCAKBl1ccyNQ _LmmzuyoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.1"/>
+ <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.1"/>
+ <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmzlioQEeSCAKBl1ccyNQ" name="border2" incomingEdges="_LmmzwCoQEeSCAKBl1ccyNQ _LmmzxSoQEeSCAKBl1ccyNQ _LmnaoyoQEeSCAKBl1ccyNQ _LmnaqCoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.1/@elements.0"/>
+ <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.1/@elements.0"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzlyoQEeSCAKBl1ccyNQ" color="253,206,137">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
</ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnanioQEeSCAKBl1ccyNQ" name="edge14" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzhSoQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.12"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.12"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnanyoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnaoCoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnaoSoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnaoioQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
+ </ownedBorderedNodes>
+ <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzmyoQEeSCAKBl1ccyNQ" borderSize="1" borderSizeComputationExpression="1" foregroundColor="204,242,166">
+ <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzoCoQEeSCAKBl1ccyNQ" name="container3" outgoingEdges="_LmmzwCoQEeSCAKBl1ccyNQ _LmmzxSoQEeSCAKBl1ccyNQ _meu-EFHfEeeoGv7ZuRd91Q" incomingEdges="_Lmmz2SoQEeSCAKBl1ccyNQ _LmnalCoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.2"/>
+ <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.2"/>
+ <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_dUGTIFHiEeeoGv7ZuRd91Q" name="border4" outgoingEdges="_r5DxYFHiEeeoGv7ZuRd91Q" width="1" height="1" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.2/@elements.0"/>
+ <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.2/@elements.0"/>
+ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+ <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+ <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_dUGTIVHiEeeoGv7ZuRd91Q" color="253,206,137">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
</ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnaoyoQEeSCAKBl1ccyNQ" name="edge8" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.13"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.13"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnapCoQEeSCAKBl1ccyNQ">
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnapSoQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnapioQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnapyoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
+ </ownedBorderedNodes>
+ <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzoSoQEeSCAKBl1ccyNQ" borderSize="1" borderSizeComputationExpression="1" foregroundColor="204,242,166">
+ <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_LmmzpioQEeSCAKBl1ccyNQ" name="container4" outgoingEdges="_LmmzuyoQEeSCAKBl1ccyNQ _Lmmz2SoQEeSCAKBl1ccyNQ _LmnaoyoQEeSCAKBl1ccyNQ" incomingEdges="_LmmzyioQEeSCAKBl1ccyNQ _LmmzzyoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.3"/>
+ <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.3"/>
+ <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_LmmzpyoQEeSCAKBl1ccyNQ" name="border3" outgoingEdges="_LmnaqCoQEeSCAKBl1ccyNQ" width="1" height="1" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.3/@elements.0"/>
+ <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.3/@elements.0"/>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_LmmzqCoQEeSCAKBl1ccyNQ" color="253,206,137">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
</ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnaqCoQEeSCAKBl1ccyNQ" name="edge6" sourceNode="_LmmzpyoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
- <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.14"/>
- <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.14"/>
- <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnaqSoQEeSCAKBl1ccyNQ" routingStyle="manhattan">
- <customFeatures>routingStyle</customFeatures>
- <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
- <strokeColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnaqioQEeSCAKBl1ccyNQ" red="39" green="76" blue="114"/>
- <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnaqyoQEeSCAKBl1ccyNQ">
- <labelColor xmi:type="viewpoint:RGBValues" xmi:id="_LmnarCoQEeSCAKBl1ccyNQ"/>
- </centerLabelStyle>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
+ </ownedBorderedNodes>
+ <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_LmmzrCoQEeSCAKBl1ccyNQ" borderSize="1" borderSizeComputationExpression="1" foregroundColor="204,242,166">
+ <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzsSoQEeSCAKBl1ccyNQ" name="edge3" sourceNode="_LmmziyoQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.0"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.0"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzsioQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmztCoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmztioQEeSCAKBl1ccyNQ" name="edge1" sourceNode="_LmmziioQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.1"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.1"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmztyoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzuSoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzuyoQEeSCAKBl1ccyNQ" name="edge7" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzlSoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.2"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.2"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzvCoQEeSCAKBl1ccyNQ" routingStyle="manhattan" strokeColor="39,76,114">
+ <customFeatures>routingStyle</customFeatures>
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzvioQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzwCoQEeSCAKBl1ccyNQ" name="edge9" sourceNode="_LmmzoCoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.3"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.3"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzwSoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzwyoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzxSoQEeSCAKBl1ccyNQ" name="edge10" sourceNode="_LmmzoCoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.4"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.4"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzxioQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzyCoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzyioQEeSCAKBl1ccyNQ" name="edge13" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzpioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.5"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.5"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmmzyyoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmmzzSoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmmzzyoQEeSCAKBl1ccyNQ" name="edge5" sourceNode="_LmmMcSoQEeSCAKBl1ccyNQ" targetNode="_LmmzpioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.6"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.6"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz0CoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz0ioQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz1CoQEeSCAKBl1ccyNQ" name="edge4" sourceNode="_LmmziyoQEeSCAKBl1ccyNQ" targetNode="_LmmMcSoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.7"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.7"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz1SoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz1yoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz2SoQEeSCAKBl1ccyNQ" name="edge11" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzoCoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.8"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.8"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_Lmmz2ioQEeSCAKBl1ccyNQ" routingStyle="manhattan" strokeColor="39,76,114">
+ <customFeatures>routingStyle</customFeatures>
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_Lmmz3CoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Lmmz3ioQEeSCAKBl1ccyNQ" name="edge2" sourceNode="_LmmzlSoQEeSCAKBl1ccyNQ" targetNode="_LmmziioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.9"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.9"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnakCoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnakioQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnalCoQEeSCAKBl1ccyNQ" name="edge12" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzoCoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.10"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.10"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnalSoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnalyoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnamSoQEeSCAKBl1ccyNQ" name="edge15" sourceNode="_LmmzhSoQEeSCAKBl1ccyNQ" targetNode="_LmmzgCoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.11"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.11"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnamioQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnanCoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnanioQEeSCAKBl1ccyNQ" name="edge14" sourceNode="_LmmzgCoQEeSCAKBl1ccyNQ" targetNode="_LmmzhSoQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.12"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.12"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnanyoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnaoSoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnaoyoQEeSCAKBl1ccyNQ" name="edge8" sourceNode="_LmmzpioQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.13"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.13"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnapCoQEeSCAKBl1ccyNQ" strokeColor="39,76,114">
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnapioQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_LmnaqCoQEeSCAKBl1ccyNQ" name="edge6" sourceNode="_LmmzpyoQEeSCAKBl1ccyNQ" targetNode="_LmmzlioQEeSCAKBl1ccyNQ">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.14"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.14"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LmnaqSoQEeSCAKBl1ccyNQ" routingStyle="manhattan" strokeColor="39,76,114">
+ <customFeatures>routingStyle</customFeatures>
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_LmnaqyoQEeSCAKBl1ccyNQ"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DNodeContainer" xmi:id="_YsevIFHfEeeoGv7ZuRd91Q" name="container5" incomingEdges="_meu-EFHfEeeoGv7ZuRd91Q">
+ <target xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.4"/>
+ <semanticElements xmi:type="migrationmodeler:Container" href="useCase.migrationmodeler#//@representations.0/@containers.4"/>
+ <ownedBorderedNodes xmi:type="diagram:DNode" xmi:id="_iNlxoFHiEeeoGv7ZuRd91Q" name="border5" incomingEdges="_r5DxYFHiEeeoGv7ZuRd91Q" width="1" height="1" resizeKind="NSEW">
+ <target xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.4/@elements.0"/>
+ <semanticElements xmi:type="migrationmodeler:Bordered" href="useCase.migrationmodeler#//@representations.0/@containers.4/@elements.0"/>
+ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+ <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+ <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+ <ownedStyle xmi:type="diagram:Square" xmi:id="_iNlxoVHiEeeoGv7ZuRd91Q" color="253,206,137">
+ <description xmi:type="style:SquareDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']/@style"/>
</ownedStyle>
- <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
- </ownedDiagramElements>
- <description xmi:type="description_1:DiagramDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']"/>
- <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_LmnarSoQEeSCAKBl1ccyNQ"/>
- <activatedLayers xmi:type="description_1:Layer" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer"/>
- <target xmi:type="migrationmodeler:Diagram" href="useCase.migrationmodeler#//@representations.0"/>
- </ownedRepresentations>
- <viewpoint xmi:type="description:Viewpoint" href="useCase.odesign#//@ownedViewpoints[name='resizing']"/>
- </ownedViews>
-</viewpoint:DAnalysis>
+ <actualMapping xmi:type="description_1:NodeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@borderedNodeMappings[name='bordered']"/>
+ </ownedBorderedNodes>
+ <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
+ <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
+ <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
+ <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_YsevIVHfEeeoGv7ZuRd91Q" borderSize="1" borderSizeComputationExpression="1" foregroundColor="204,242,166">
+ <description xmi:type="style:FlatContainerStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']/@style"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:ContainerMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@containerMappings[name='container']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_meu-EFHfEeeoGv7ZuRd91Q" name="edge17" sourceNode="_LmmzoCoQEeSCAKBl1ccyNQ" targetNode="_YsevIFHfEeeoGv7ZuRd91Q">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.15"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.15"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_meu-EVHfEeeoGv7ZuRd91Q" routingStyle="manhattan" strokeColor="39,76,114">
+ <customFeatures>routingStyle</customFeatures>
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_meu-ElHfEeeoGv7ZuRd91Q"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_r5DxYFHiEeeoGv7ZuRd91Q" name="edge16" sourceNode="_dUGTIFHiEeeoGv7ZuRd91Q" targetNode="_iNlxoFHiEeeoGv7ZuRd91Q">
+ <target xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.16"/>
+ <semanticElements xmi:type="migrationmodeler:Edge" href="useCase.migrationmodeler#//@representations.0/@edges.16"/>
+ <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_r5EYcFHiEeeoGv7ZuRd91Q" routingStyle="manhattan" strokeColor="39,76,114">
+ <customFeatures>routingStyle</customFeatures>
+ <description xmi:type="style:EdgeStyleDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']/@style"/>
+ <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_r5EYcVHiEeeoGv7ZuRd91Q"/>
+ </ownedStyle>
+ <actualMapping xmi:type="description_1:EdgeMapping" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer/@edgeMappings[name='edge']"/>
+ </ownedDiagramElements>
+ <description xmi:type="description_1:DiagramDescription" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']"/>
+ <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_LmnarSoQEeSCAKBl1ccyNQ"/>
+ <activatedLayers xmi:type="description_1:Layer" href="useCase.odesign#//@ownedViewpoints[name='resizing']/@ownedRepresentations[name='useCase']/@defaultLayer"/>
+ <target xmi:type="migrationmodeler:Diagram" href="useCase.migrationmodeler#//@representations.0"/>
+ </diagram:DSemanticDiagram>
+</xmi:XMI>
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.migrationmodeler b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.migrationmodeler
index acb23d3625..3a3220d710 100644
--- a/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.migrationmodeler
+++ b/plugins/org.eclipse.sirius.tests.swtbot/data/unit/shapeResizing/useCase.migrationmodeler
@@ -7,10 +7,15 @@
<containers id="container2">
<elements xsi:type="migrationmodeler:Bordered" id="border2"/>
</containers>
- <containers id="container3"/>
+ <containers id="container3">
+ <elements xsi:type="migrationmodeler:Bordered" id="border4"/>
+ </containers>
<containers id="container4">
<elements xsi:type="migrationmodeler:Bordered" id="border3"/>
</containers>
+ <containers id="container5">
+ <elements xsi:type="migrationmodeler:Bordered" id="border5"/>
+ </containers>
<nodes id="node1"/>
<nodes id="node2"/>
<nodes id="node3"/>
@@ -29,5 +34,7 @@
<edges id="edge14" source="//@representations.0/@nodes.1" target="//@representations.0/@nodes.2"/>
<edges id="edge8" source="//@representations.0/@containers.3" target="//@representations.0/@containers.1/@elements.0"/>
<edges id="edge6" source="//@representations.0/@containers.3/@elements.0" target="//@representations.0/@containers.1/@elements.0"/>
+ <edges id="edge17" source="//@representations.0/@containers.2" target="//@representations.0/@containers.4"/>
+ <edges id="edge16" source="//@representations.0/@containers.2/@elements.0" target="//@representations.0/@containers.4/@elements.0"/>
</representations>
</migrationmodeler:TestCase>
diff --git a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/RemoveEdgeBendpointsTest.java b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/RemoveEdgeBendpointsTest.java
index 5f751d0f4c..1d759220da 100644
--- a/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/RemoveEdgeBendpointsTest.java
+++ b/plugins/org.eclipse.sirius.tests.swtbot/src/org/eclipse/sirius/tests/swtbot/RemoveEdgeBendpointsTest.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2014 THALES GLOBAL SERVICES and others.
+ * Copyright (c) 2017 THALES GLOBAL SERVICES and others.
* 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
@@ -12,8 +12,10 @@ package org.eclipse.sirius.tests.swtbot;
import org.eclipse.draw2d.Connection;
import org.eclipse.draw2d.ConnectionAnchor;
+import org.eclipse.draw2d.IFigure;
import org.eclipse.draw2d.geometry.Point;
import org.eclipse.draw2d.geometry.PointList;
+import org.eclipse.draw2d.geometry.Rectangle;
import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
import org.eclipse.sirius.diagram.DDiagram;
import org.eclipse.sirius.diagram.ui.internal.edit.parts.DEdgeEditPart;
@@ -32,7 +34,6 @@ import org.eclipse.swtbot.eclipse.gef.finder.widgets.SWTBotGefEditPart;
* Class test for the new feature that Removes edge bendpoints. see bug #443108
*
* @author Florian Barbin
- *
*/
public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
@@ -48,6 +49,7 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
/*
* (non-Javadoc)
+ *
* @see
* org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase
* #onSetUpBeforeClosingWelcomePage()
@@ -60,6 +62,7 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
/*
* (non-Javadoc)
+ *
* @see
* org.eclipse.sirius.tests.swtbot.support.api.AbstractSiriusSwtBotGefTestCase
* #onSetUpAfterOpeningDesignerPerspective()
@@ -99,6 +102,38 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
}
/**
+ * Test that removes bendpoints on a rectilinear edge between a border node and an
+ * other one (zoom 100%). Result will be an edge with three segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenBorderNodesThreeSeg() {
+ removeRectilinearBendpointsBetweenBorderNodesThreeSeg(ZoomLevel.ZOOM_100);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between a border node and an
+ * other one (zoom 100%). Result will be an edge with two segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenBorderNodesTwoSeg() {
+ removeRectilinearBendpointsBetweenBorderNodesTwoSeg(ZoomLevel.ZOOM_100);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between two nodes (zoom 100%)
+ * Result will be an edge with three segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenNodeThreeSeg() {
+ removeRectilinearBendpointsBetweenNodeThreeSeg(ZoomLevel.ZOOM_100);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between two nodes (zoom 100%)
+ * Result will be an edge with two segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenNodeTwoSeg() {
+ removeRectilinearBendpointsBetweenNodeTwoSeg(ZoomLevel.ZOOM_100);
+ }
+
+ /**
* Test that removes bendpoints on an edge between two containers (zoom 50%)
*/
public void testRemoveBendpointsBetweenContainers50() {
@@ -121,6 +156,38 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
}
/**
+ * Test that removes bendpoints on a rectilinear edge between a border node and an
+ * other one (zoom 50%). Result will be an edge with three segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenBorderNodesThreeSeg50() {
+ removeRectilinearBendpointsBetweenBorderNodesThreeSeg(ZoomLevel.ZOOM_50);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between a border node and an
+ * other one (zoom 50%). Result will be an edge with two segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenBorderNodesTwoSeg50() {
+ removeRectilinearBendpointsBetweenBorderNodesTwoSeg(ZoomLevel.ZOOM_50);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between two nodes (zoom 50%)
+ * Result will be an edge with three segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenNodeThreeSeg50() {
+ removeRectilinearBendpointsBetweenNodeThreeSeg(ZoomLevel.ZOOM_50);
+ }
+
+ /**
+ * Test that removes bendpoints on a rectilinear edge between two nodes (zoom 50%)
+ * Result will be an edge with two segments.
+ */
+ public void testRemoveRectilinearBendpointsBetweenNodeTwoSeg50() {
+ removeRectilinearBendpointsBetweenNodeTwoSeg(ZoomLevel.ZOOM_50);
+ }
+
+ /**
* Test that removes bendpoints on an edge between two containers (zoom
* 125%)
*/
@@ -157,11 +224,30 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
removeBendpointsOfEdge(zoomLevel, "edge15");
}
+ private void removeRectilinearBendpointsBetweenBorderNodesThreeSeg(ZoomLevel zoomLevel) {
+
+ removeBendpointsOfRectilinearEdge(zoomLevel, "edge6", 3);
+ }
+
+ private void removeRectilinearBendpointsBetweenBorderNodesTwoSeg(ZoomLevel zoomLevel) {
+
+ removeBendpointsOfRectilinearEdge(zoomLevel, "edge16", 2);
+ }
+
+ private void removeRectilinearBendpointsBetweenNodeThreeSeg(ZoomLevel zoomLevel) {
+ removeBendpointsOfRectilinearEdge(zoomLevel, "edge11", 3);
+ }
+
+ private void removeRectilinearBendpointsBetweenNodeTwoSeg(ZoomLevel zoomLevel) {
+ removeBendpointsOfRectilinearEdge(zoomLevel, "edge17", 2);
+ }
+
private void removeBendpointsOfEdge(ZoomLevel zoomLevel, String edgename) {
editor.zoom(zoomLevel);
SWTBotUtils.waitAllUiEvents();
- SWTBotGefConnectionEditPart swtBotGefEditPart = (SWTBotGefConnectionEditPart) editor.getEditPart(edgename, DEdgeEditPart.class);
+ SWTBotGefConnectionEditPart swtBotGefEditPart = (SWTBotGefConnectionEditPart) editor.getEditPart(edgename,
+ DEdgeEditPart.class);
swtBotGefEditPart.select();
removeBendpoints();
@@ -171,13 +257,29 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
assertEdgeHasExpectedBendpoints(swtBotGefEditPart);
}
+ private void removeBendpointsOfRectilinearEdge(ZoomLevel zoomLevel, String edgename, int nbSegemnt) {
+ editor.zoom(zoomLevel);
+ SWTBotUtils.waitAllUiEvents();
+
+ SWTBotGefConnectionEditPart swtBotGefEditPart = (SWTBotGefConnectionEditPart) editor.getEditPart(edgename,
+ DEdgeEditPart.class);
+ swtBotGefEditPart.select();
+ removeBendpoints();
+
+ editor.zoom(ZoomLevel.ZOOM_100);
+ SWTBotUtils.waitAllUiEvents();
+
+ assertRectilinearEdgeHasExpectedBendpoints(swtBotGefEditPart, nbSegemnt);
+ }
+
private void removeBendpoints() {
editor.clickContextMenu("Remove Bend-points");
SWTBotUtils.waitAllUiEvents();
}
private void openDiagram(String representationName) {
- editor = (SWTBotSiriusDiagramEditor) openRepresentation(localSession.getOpenedSession(), REPRESENTATION_DESCRIPTION_NAME, representationName, DDiagram.class);
+ editor = (SWTBotSiriusDiagramEditor) openRepresentation(localSession.getOpenedSession(),
+ REPRESENTATION_DESCRIPTION_NAME, representationName, DDiagram.class);
}
private void assertEdgeHasExpectedBendpoints(SWTBotGefConnectionEditPart swtBotGefConnectionEditPart) {
@@ -199,15 +301,129 @@ public class RemoveEdgeBendpointsTest extends AbstractSiriusSwtBotGefTestCase {
GraphicalHelper.screen2logical(lineOrigin, (IGraphicalEditPart) swtBotGefConnectionEditPart.part());
GraphicalHelper.screen2logical(lineTerminus, (IGraphicalEditPart) swtBotGefConnectionEditPart.part());
- Option<Point> expectedFirstBendpoint = GraphicalHelper.getIntersection(lineOrigin, lineTerminus, (IGraphicalEditPart) sourceSwtBotGefEditPart.part(), true);
- Option<Point> expectedSecondBendpoint = GraphicalHelper.getIntersection(lineOrigin, lineTerminus, (IGraphicalEditPart) targetSwtBotGefEditPart.part(), false);
+ Option<Point> expectedFirstBendpoint = GraphicalHelper.getIntersection(lineOrigin, lineTerminus,
+ (IGraphicalEditPart) sourceSwtBotGefEditPart.part(), true);
+ Option<Point> expectedSecondBendpoint = GraphicalHelper.getIntersection(lineOrigin, lineTerminus,
+ (IGraphicalEditPart) targetSwtBotGefEditPart.part(), false);
+
+ assertConnectionEndPointEquals("Wrong edge source connection", expectedFirstBendpoint.get(),
+ realSourceConnection);
+ assertConnectionEndPointEquals("Wrong edge target connection", expectedSecondBendpoint.get(),
+ realTargetConnection);
+
+ }
+
+ private void assertRectilinearEdgeHasExpectedBendpoints(SWTBotGefConnectionEditPart swtBotGefConnectionEditPart,
+ int nbSegment) {
+
+ SWTBotGefEditPart sourceSwtBotGefEditPart = swtBotGefConnectionEditPart.source();
+ SWTBotGefEditPart targetSwtBotGefEditPart = swtBotGefConnectionEditPart.target();
+ ConnectionAnchor srcAnchor = ((Connection) swtBotGefConnectionEditPart.part().getFigure()).getSourceAnchor();
+ ConnectionAnchor tgtAnchor = ((Connection) swtBotGefConnectionEditPart.part().getFigure()).getTargetAnchor();
+
+ IFigure srcFigure = ((IGraphicalEditPart) sourceSwtBotGefEditPart.part()).getFigure();
+ IFigure tgtFigure = ((IGraphicalEditPart) targetSwtBotGefEditPart.part()).getFigure();
+
+ Point srcAnchorPoint = srcAnchor.getReferencePoint();
+ Point tgtAnchorPoint = tgtAnchor.getReferencePoint();
+
+ GraphicalHelper.screen2logical(srcAnchorPoint, (IGraphicalEditPart) swtBotGefConnectionEditPart.part());
+ GraphicalHelper.screen2logical(tgtAnchorPoint, (IGraphicalEditPart) swtBotGefConnectionEditPart.part());
+
+ // check anchor in Figure center
+ assertConnectionEndPointEquals("Wrong source anchor point.", srcAnchorPoint, getFigureCenter(srcFigure));
+ assertConnectionEndPointEquals("Wrong target anchor point.", tgtAnchorPoint, getFigureCenter(tgtFigure));
+
+ Connection connection = (Connection) swtBotGefConnectionEditPart.part().getFigure();
+ PointList pointList = connection.getPoints();
+
+ // check number of Bendpoints
+ int nbPoint = nbSegment + 1;
+ assertEquals("The egdge should have only " + nbPoint + " bendpoints corresponding to the edge ends.", nbPoint,
+ pointList.size());
+ Point realTargetConnection = pointList.getPoint(nbPoint - 1);
+ Point realSourceConnection = pointList.getPoint(0);
- assertConnectionEndPointEquals("Wrong edge source connection", expectedFirstBendpoint.get(), realSourceConnection);
- assertConnectionEndPointEquals("Wrong edge target connection", expectedSecondBendpoint.get(), realTargetConnection);
+ Option<Point> intersectionAnchorsSrcFigure = GraphicalHelper.getIntersection(srcAnchorPoint, tgtAnchorPoint,
+ (IGraphicalEditPart) sourceSwtBotGefEditPart.part(), true);
+ Option<Point> intersectionAnchorsTgtFigure = GraphicalHelper.getIntersection(srcAnchorPoint, tgtAnchorPoint,
+ (IGraphicalEditPart) targetSwtBotGefEditPart.part(), false);
+
+ // check if source and target are correct
+ isPointOnSideAndAlignWithAnchor(srcAnchorPoint, intersectionAnchorsSrcFigure.get(), realSourceConnection);
+ isPointOnSideAndAlignWithAnchor(tgtAnchorPoint, intersectionAnchorsTgtFigure.get(), realTargetConnection);
+
+ if (nbSegment == 2) {
+ // +/- 1 tolerance
+ if (realSourceConnection.x() <= (srcAnchorPoint.x() + 1)
+ && realSourceConnection.x() >= srcAnchorPoint.x() - 1) {
+ // case source side is horizontal
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(1),
+ new Point(srcAnchorPoint.x, tgtAnchorPoint.y));
+ } else {
+ // case source side is vertical
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(1),
+ new Point(srcAnchorPoint.y, tgtAnchorPoint.x));
+ }
+ } else if (nbSegment == 3) {
+ // +/- 1 tolerance
+ if (realSourceConnection.x() <= (srcAnchorPoint.x() + 1)
+ && realSourceConnection.x() >= srcAnchorPoint.x() - 1) {
+ int middleY = (intersectionAnchorsSrcFigure.get().y + intersectionAnchorsTgtFigure.get().y) / 2;
+ // case source side is horizontal
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(1),
+ new Point(srcAnchorPoint.x, middleY));
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(2),
+ new Point(tgtAnchorPoint.x, middleY));
+ } else {
+ int middleX = (intersectionAnchorsSrcFigure.get().x + intersectionAnchorsTgtFigure.get().x) / 2;
+ // case source side is vertical
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(1),
+ new Point(middleX, srcAnchorPoint.y));
+ assertConnectionEndPointEquals("Wrong middle Bendpoints.", pointList.getPoint(2),
+ new Point(middleX, tgtAnchorPoint.y));
+ }
+ }
}
/**
+ * Check if a real point is align with the anchor of a figure and if it is on a side of this figure.
+ *
+ * @param anchor
+ * the anchor of the figure (center of figure for rectilinear study)
+ * @param intersection
+ * point on the intersection side on which the point has to belong
+ * @param realPoint
+ * the real point to check
+ */
+ private void isPointOnSideAndAlignWithAnchor(Point anchor, Point interection, Point realPoint) {
+ if (interection.y == realPoint.y) {
+ assertConnectionEndPointEquals(
+ "Bendpoint (" + realPoint.x() + "," + realPoint.y() + ") is not aligned with anchor.",
+ new Point(anchor.x(), interection.y), realPoint);
+ } else if (interection.x == realPoint.x) {
+ assertConnectionEndPointEquals(
+ "Bendpoint (" + realPoint.x() + "," + realPoint.y() + ") is not aligned with anchor.",
+ new Point(interection.x(), anchor.y), realPoint);
+ } else {
+ fail("Bendpoint (" + realPoint.x() + "," + realPoint.y() + ") is not on the figure bounds.");
+ }
+ }
+
+ /**
+ * Return the center of a quadrangle figure.
+ *
+ * @param figure
+ * the quadrangle figure with the center to find
+ * @return the center of the quadrangle figure
+ */
+ private Point getFigureCenter(IFigure figure) {
+ Rectangle bounds = figure.getBounds();
+ return new Point(bounds.x + bounds.width / 2, bounds.y + bounds.height / 2);
+ }
+
+ /**
* Assert that the actual point is equal to the expected one with +/- 1
* tolerance.
*

Back to the top