diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc index a369d64b4..021d1e5ef 100644 --- a/CHANGELOG.adoc +++ b/CHANGELOG.adoc @@ -68,13 +68,17 @@ As a result, the application won't start if a service call is constructed with a - https://github.com/eclipse-syson/syson/issues/1988[#1988] [syson] Extract Elasticsearch container initialization in a dedicated abstract test class. Integration tests that require Elasticsearch now need to extend `AbstractIntegrationTestsWithElasticsearch`. - https://github.com/eclipse-syson/syson/issues/1983[#1983] [details] `reqId` property of `RequirementDefinition` is now visible in the _Core_ tab of the _Details_ view. -- https://github.com/eclipse-syson/syson/issues/1945[#1945] [diagrams] Add ends compartment on `AllocationDefinition` and `ConnectionDefinition` graphical nodes +- https://github.com/eclipse-syson/syson/issues/1945[#1945] [diagrams] Add ends compartment on `AllocationDefinition` and `ConnectionDefinition` graphical nodes. Newly created `AllocationDefinition` and `ConnectionDefinition` graphical nodes now have two initial _connection ends_, named _source_ and _target_. Additional ends can be created using the _New end_ graphical node tool (which replaces the _New Part as end_ previously available only on `AllocationDefinition` graphical nodes). - https://github.com/eclipse-syson/syson/issues/1972[#1972] [diagrams] Add _ends_ compartment on `InterfaceDefinition` graphical node. Newly created `InterfaceDefinition` graphical nodes now have two initial _ports_ named _source_ and _target_. Additional ports can be created using the _New Port as end_ graphical node tool. - https://github.com/eclipse-syson/syson/issues/1863[#1863] [diagrams] Dropping an elements on a diagram which is already visible gives feedback again. +- https://github.com/eclipse-syson/syson/issues/2003[#2003] [diagrams] Rework the way _New Binding Connector As Usage (bind)_, _New Flow (flow)_ and _New Interface (interface)_ graphical edge tools works. +Currently, when a binding/interface/flow graphical edge tool is executed, if it involves an inherited feature(s) (as source and/or target of the tool), then the inherited feature(s) is/are redefined first. +Instead SysON will now use the inherited elements without redefining them first, as it is done by the _New Connection (connect)_ edge tool. + === New features diff --git a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/services/CoreFeaturesSwitch.java b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/services/CoreFeaturesSwitch.java index 58b83c21e..8825385b7 100644 --- a/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/services/CoreFeaturesSwitch.java +++ b/backend/application/syson-application-configuration/src/main/java/org/eclipse/syson/application/services/CoreFeaturesSwitch.java @@ -21,6 +21,7 @@ import org.eclipse.syson.sysml.Dependency; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; +import org.eclipse.syson.sysml.FeatureChaining; import org.eclipse.syson.sysml.FeatureTyping; import org.eclipse.syson.sysml.FeatureValue; import org.eclipse.syson.sysml.LiteralBoolean; @@ -97,6 +98,14 @@ public List caseFeature(Feature object) { return features; } + @Override + public List caseFeatureChaining(FeatureChaining object) { + var features = new ArrayList(); + features.addAll(this.caseElement(object)); + features.add(SysmlPackage.eINSTANCE.getFeatureChaining_ChainingFeature()); + return features; + } + @Override public List caseFeatureValue(FeatureValue object) { var features = new ArrayList(); diff --git a/backend/application/syson-application-configuration/src/test/java/org/eclipse/syson/application/services/DetailsViewServiceTest.java b/backend/application/syson-application-configuration/src/test/java/org/eclipse/syson/application/services/DetailsViewServiceTest.java index 525ec2db1..0f48b5c95 100644 --- a/backend/application/syson-application-configuration/src/test/java/org/eclipse/syson/application/services/DetailsViewServiceTest.java +++ b/backend/application/syson-application-configuration/src/test/java/org/eclipse/syson/application/services/DetailsViewServiceTest.java @@ -62,6 +62,15 @@ public void getCoreFeaturesOfPartUsage() { SysmlPackage.eINSTANCE.getOccurrenceUsage_IsIndividual()); } + @Test + public void getCoreFeaturesOfFeatureChaining() { + List coreStructuralFeatures = this.detailsViewService.getCoreFeatures(SysmlFactory.eINSTANCE.createFeatureChaining()); + assertThat(coreStructuralFeatures).containsOnly(SysmlPackage.eINSTANCE.getElement_DeclaredName(), + SysmlPackage.eINSTANCE.getElement_QualifiedName(), + SysmlPackage.eINSTANCE.getElement_DeclaredShortName(), + SysmlPackage.eINSTANCE.getFeatureChaining_ChainingFeature()); + } + @Test public void getCoreFeaturesOfFeatureValue() { List coreStructuralFeatures = this.detailsViewService.getCoreFeatures(SysmlFactory.eINSTANCE.createFeatureValue()); diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorAsUsageCheckerBuilder.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorCheckerBuilder.java similarity index 72% rename from backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorAsUsageCheckerBuilder.java rename to backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorCheckerBuilder.java index c6aa8f873..192efe47f 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorAsUsageCheckerBuilder.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/checkers/ConnectorCheckerBuilder.java @@ -19,16 +19,17 @@ import org.eclipse.sirius.components.core.api.IIdentityService; import org.eclipse.syson.application.controller.editingContext.checkers.SemanticCheckerService; -import org.eclipse.syson.sysml.ConnectorAsUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.FeatureChaining; /** - * Builder for a checker that verify semantic of a {@link org.eclipse.syson.sysml.ConnectorAsUsage}. + * Builder for a checker that verify semantic of a {@link org.eclipse.syson.sysml.Connector}. * - * @param Type of {@link ConnectorAsUsage} to check. + * @param + * Type of {@link Connector} to check. * @author Arthur Daussy */ -public class ConnectorAsUsageCheckerBuilder { +public class ConnectorCheckerBuilder { private String expectedSourceSemanticId; @@ -50,7 +51,7 @@ public class ConnectorAsUsageCheckerBuilder { private final SemanticCheckerService semanticCheckerService; - public ConnectorAsUsageCheckerBuilder( + public ConnectorCheckerBuilder( IIdentityService identityService, Class expectedType, SemanticCheckerService semanticCheckerService) { @@ -59,65 +60,65 @@ public ConnectorAsUsageCheckerBuilder( this.semanticCheckerService = semanticCheckerService; } - public ConnectorAsUsageCheckerBuilder setExpectedSemanticContainer(String anExpectedSemanticContainer) { + public ConnectorCheckerBuilder setExpectedSemanticContainer(String anExpectedSemanticContainer) { this.expectedSemanticContainer = anExpectedSemanticContainer; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedSourceFeatureChain(List anExpectedSourceFeatureChain) { + public ConnectorCheckerBuilder setExpectedSourceFeatureChain(List anExpectedSourceFeatureChain) { this.expectedSourceFeatureChain = anExpectedSourceFeatureChain; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedSourceReference(String anExpectedSourceReference) { + public ConnectorCheckerBuilder setExpectedSourceReference(String anExpectedSourceReference) { this.expectedSourceReference = anExpectedSourceReference; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedSourceSemanticId(String anExpectedSourceSemanticId) { + public ConnectorCheckerBuilder setExpectedSourceSemanticId(String anExpectedSourceSemanticId) { this.expectedSourceSemanticId = anExpectedSourceSemanticId; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedTargetSemanticId(String anExpectedTargetSemanticId) { + public ConnectorCheckerBuilder setExpectedTargetSemanticId(String anExpectedTargetSemanticId) { this.expectedTargetSemanticId = anExpectedTargetSemanticId; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedTargetFeatureChain(List anExpectedTargetFeatureChain) { + public ConnectorCheckerBuilder setExpectedTargetFeatureChain(List anExpectedTargetFeatureChain) { this.expectedTargetFeatureChain = anExpectedTargetFeatureChain; return this; } - public ConnectorAsUsageCheckerBuilder setExpectedTargetReference(String anExpectedTargetReference) { + public ConnectorCheckerBuilder setExpectedTargetReference(String anExpectedTargetReference) { this.expectedTargetReference = anExpectedTargetReference; return this; } public Runnable build(AtomicReference edgeIdProvider) { return this.semanticCheckerService.checkElement(this.expectedType, edgeIdProvider::get, - connectorAsUsage -> { - assertThat(this.identityService.getId(connectorAsUsage.getSourceFeature().getFeatureTarget())) + connector -> { + assertThat(this.identityService.getId(connector.getSourceFeature().getFeatureTarget())) .isEqualTo(this.expectedSourceSemanticId); - assertThat(this.identityService.getId(connectorAsUsage.getTargetFeature().get(0).getFeatureTarget())) + assertThat(this.identityService.getId(connector.getTargetFeature().get(0).getFeatureTarget())) .isEqualTo(this.expectedTargetSemanticId); - assertThat(this.identityService.getId(connectorAsUsage.getOwner())).isEqualTo(this.expectedSemanticContainer); + assertThat(this.identityService.getId(connector.getOwner())).isEqualTo(this.expectedSemanticContainer); if (this.expectedSourceReference != null) { - assertThat(this.identityService.getId(connectorAsUsage.getSourceFeature())) + assertThat(this.identityService.getId(connector.getSourceFeature())) .isEqualTo(this.expectedSourceReference); } else if (this.expectedSourceFeatureChain != null) { - assertThat(connectorAsUsage.getSourceFeature().getOwnedFeatureChaining().stream() + assertThat(connector.getSourceFeature().getOwnedFeatureChaining().stream() .map(FeatureChaining::getChainingFeature) .map(this.identityService::getId) .toList()) .isEqualTo(this.expectedSourceFeatureChain); } if (this.expectedTargetReference != null) { - assertThat(this.identityService.getId(connectorAsUsage.getTargetFeature().get(0))) + assertThat(this.identityService.getId(connector.getTargetFeature().get(0))) .isEqualTo(this.expectedTargetReference); } else if (this.expectedTargetFeatureChain != null) { - assertThat(connectorAsUsage.getTargetFeature().get(0).getOwnedFeatureChaining().stream() + assertThat(connector.getTargetFeature().get(0).getOwnedFeatureChaining().stream() .map(FeatureChaining::getChainingFeature) .map(this.identityService::getId) .toList()) @@ -125,5 +126,4 @@ public Runnable build(AtomicReference edgeIdProvider) { } }); } - } diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVBindingConnectorAsUsageTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVBindingConnectorAsUsageTests.java index 4bd9e4f6c..4f4fa1ac5 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVBindingConnectorAsUsageTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVBindingConnectorAsUsageTests.java @@ -39,7 +39,7 @@ import org.eclipse.syson.SysONTestsProperties; import org.eclipse.syson.application.controller.editingContext.checkers.SemanticCheckerService; import org.eclipse.syson.application.controllers.diagrams.checkers.CheckDiagramElementCount; -import org.eclipse.syson.application.controllers.diagrams.checkers.ConnectorAsUsageCheckerBuilder; +import org.eclipse.syson.application.controllers.diagrams.checkers.ConnectorCheckerBuilder; import org.eclipse.syson.application.controllers.diagrams.testers.EdgeCreationTester; import org.eclipse.syson.application.controllers.diagrams.testers.EdgeReconnectionTester; import org.eclipse.syson.application.data.GeneralViewBindingConnectorProjectData; @@ -320,8 +320,8 @@ public void reconnectTargetSameLevel() { .verify(Duration.ofSeconds(10)); } - private ConnectorAsUsageCheckerBuilder createCheckerBuilder() { - return new ConnectorAsUsageCheckerBuilder<>(this.identityService, BindingConnectorAsUsage.class, this.semanticCheckerService); + private ConnectorCheckerBuilder createCheckerBuilder() { + return new ConnectorCheckerBuilder<>(this.identityService, BindingConnectorAsUsage.class, this.semanticCheckerService); } private Consumer assertReconnectThat(String expectedSourceGraplicalId, String expectedTargetGraplicalId, AtomicReference diagram, Consumer newEdgeConsumer) { diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVConnectionUsageEdgeTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVConnectionUsageEdgeTests.java index c40f776fe..63f05c112 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVConnectionUsageEdgeTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVConnectionUsageEdgeTests.java @@ -42,7 +42,7 @@ import org.eclipse.syson.GivenSysONServer; import org.eclipse.syson.application.controller.editingContext.checkers.SemanticCheckerService; import org.eclipse.syson.application.controllers.diagrams.checkers.CheckDiagramElementCount; -import org.eclipse.syson.application.controllers.diagrams.checkers.ConnectorAsUsageCheckerBuilder; +import org.eclipse.syson.application.controllers.diagrams.checkers.ConnectorCheckerBuilder; import org.eclipse.syson.application.controllers.diagrams.testers.DirectEditTester; import org.eclipse.syson.application.controllers.diagrams.testers.EdgeCreationTester; import org.eclipse.syson.application.controllers.diagrams.testers.EdgeReconnectionTester; @@ -575,8 +575,8 @@ private Consumer assertNewEdgeThat(String expectedSourceGraphicalId, Str }); } - private ConnectorAsUsageCheckerBuilder createCheckerBuilder() { - return new ConnectorAsUsageCheckerBuilder<>(this.identityService, ConnectionUsage.class, this.semanticCheckerService); + private ConnectorCheckerBuilder createCheckerBuilder() { + return new ConnectorCheckerBuilder<>(this.identityService, ConnectionUsage.class, this.semanticCheckerService); } private Runnable buildReconnectRunnable(String edgeId, String newTarget, ReconnectEdgeKind reconnectionKind, AtomicReference diagram) { @@ -587,7 +587,7 @@ private Runnable buildReconnectRunnable(String edgeId, String newTarget, Reconne reconnectionKind); } - private Consumer assertReconnectThat(String expectedSourceGraplicalId, String expectedTargetGraplicalId, AtomicReference diagram, Consumer newEdgeConsumer) { + private Consumer assertReconnectThat(String expectedSourceGrapicalId, String expectedTargetGraphicalId, AtomicReference diagram, Consumer newEdgeConsumer) { return assertRefreshedDiagramThat(newDiagram -> { new CheckDiagramElementCount(this.diagramComparator) .hasNewEdgeCount(1) @@ -596,8 +596,8 @@ private Consumer assertReconnectThat(String expectedSourceGraplicalId, S Edge newEdge = this.diagramComparator.newEdges(diagram.get(), newDiagram).get(0); newEdgeConsumer.accept(newEdge.getTargetObjectId()); DiagramAssertions.assertThat(newEdge) - .hasSourceId(expectedSourceGraplicalId) - .hasTargetId(expectedTargetGraplicalId) + .hasSourceId(expectedSourceGrapicalId) + .hasTargetId(expectedTargetGraphicalId) .extracting(Edge::getStyle, EDGE_STYLE) .hasSourceArrow(ArrowStyle.None) .hasTargetArrow(ArrowStyle.None); diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVFlowUsageTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVFlowUsageTests.java index 8b836a36f..c1dfaafad 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVFlowUsageTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVFlowUsageTests.java @@ -46,7 +46,6 @@ import org.eclipse.syson.services.diagrams.api.IGivenDiagramDescription; import org.eclipse.syson.services.diagrams.api.IGivenDiagramSubscription; import org.eclipse.syson.standard.diagrams.view.SDVDescriptionNameGenerator; -import org.eclipse.syson.sysml.BindingConnectorAsUsage; import org.eclipse.syson.sysml.FlowUsage; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.IDescriptionNameGenerator; @@ -137,26 +136,24 @@ public void checkFlowConnectionCreation() { GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_3_IN_ITEM_ID, creationToolId); - String[] newFlow = new String[1]; + AtomicReference newFlow = new AtomicReference<>(); Consumer diagramCheck = assertRefreshedDiagramThat(newDiagram -> { var initialDiagram = diagram.get(); new CheckDiagramElementCount(this.diagramComparator) .hasNewEdgeCount(1) .check(initialDiagram, newDiagram); Edge newEdge = this.diagramComparator.newEdges(initialDiagram, newDiagram).get(0); - newFlow[0] = newEdge.getTargetObjectId(); + newFlow.set(newEdge.getTargetObjectId()); assertThat(newEdge).hasSourceId(GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_2_OUT_ITEM_ID); assertThat(newEdge).hasTargetId(GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_3_IN_ITEM_ID); assertThat(newEdge.getStyle()).hasTargetArrow(ArrowStyle.InputFillClosedArrow); }); - Runnable semanticCheck = this.semanticCheckerService.checkElement(FlowUsage.class, () -> newFlow[0], flow -> { + Runnable semanticCheck = this.semanticCheckerService.checkElement(FlowUsage.class, () -> newFlow.get(), flow -> { assertThat(this.identityService.getId(flow.getSourceOutputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_2_OUT_ITEM_ID); assertThat(this.identityService.getId(flow.getTargetInputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_IN_ITEM_ID); - assertThat(this.identityService.getId(flow.getSourceFeature())).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_2_ID); - assertThat(this.identityService.getId(flow.getTargetFeature().get(0))).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_ID); }); StepVerifier.create(flux) @@ -189,14 +186,14 @@ public void checkItemUsageBindingConnectorAsUsage() { GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_3_IN_ITEM_ID, creationToolId); - String[] newBinding = new String[1]; + AtomicReference newBinding = new AtomicReference<>(); Consumer diagramCheck = assertRefreshedDiagramThat(newDiagram -> { var initialDiagram = diagram.get(); new CheckDiagramElementCount(this.diagramComparator) .hasNewEdgeCount(1) .check(initialDiagram, newDiagram); Edge newEdge = this.diagramComparator.newEdges(initialDiagram, newDiagram).get(0); - newBinding[0] = newEdge.getTargetObjectId(); + newBinding.set(newEdge.getTargetObjectId()); assertThat(newEdge) .hasSourceId(GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_2_OUT_ITEM_ID) .hasTargetId(GeneralViewFlowConnectionItemUsagesProjectData.GraphicalIds.ACTION_USAGE_3_IN_ITEM_ID) @@ -205,18 +202,10 @@ public void checkItemUsageBindingConnectorAsUsage() { .hasTargetArrow(ArrowStyle.None); }); - Runnable semanticCheck = this.semanticCheckerService.checkElement(BindingConnectorAsUsage.class, () -> newBinding[0], binding -> { - assertThat(this.identityService.getId(binding.getSourceFeature())) - .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_2_OUT_ITEM_ID); - assertThat(this.identityService.getId(binding.getTargetFeature().get(0).getFeatureTarget())) - .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_IN_ITEM_ID); - }); - StepVerifier.create(flux) .consumeNextWith(initialDiagramContentConsumer) .then(creationToolRunnable) .consumeNextWith(diagramCheck) - .then(semanticCheck) .thenCancel() .verify(Duration.ofSeconds(10)); } @@ -253,8 +242,6 @@ public void reconnectFlowUsageTarget() { .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_1_OUT_ITEM_ID); assertThat(this.identityService.getId(flowUsage.getTargetInputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_IN_ITEM_ID); - assertThat(this.identityService.getId(flowUsage.getSourceFeature())).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_1_ID); - assertThat(this.identityService.getId(flowUsage.getTargetFeature().get(0))).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_ID); }); StepVerifier.create(flux) @@ -299,8 +286,6 @@ public void reconnectFlowUsageSource() { .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_OUT_ITEM_ID); assertThat(this.identityService.getId(flowUsage.getTargetInputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_2_IN_ITEM_ID); - assertThat(this.identityService.getId(flowUsage.getSourceFeature())).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_3_ID); - assertThat(this.identityService.getId(flowUsage.getTargetFeature().get(0))).isEqualTo(GeneralViewFlowConnectionItemUsagesProjectData.SemanticIds.ACTION_USAGE_2_ID); }); StepVerifier.create(flux) diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java index 25f78396e..94b670507 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/general/view/GVInheritedPortTests.java @@ -158,7 +158,7 @@ public void checkInheritedPortsVisibility() { .verify(Duration.ofSeconds(10)); } - @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoke from inherited port, THEN inherited port is redefined") + @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoke from inherited port, THEN inherited port is not redefined") @GivenSysONServer({ GeneralViewInheritedPortTestProjectData.SCRIPT_PATH }) @ParameterizedTest @ValueSource(strings = { "New Binding Connector As Usage (bind)", "New Interface (connect)", "New Flow (flow)" }) @@ -189,7 +189,7 @@ public void checkInheritedPortSourceRedefinition(String parameterizedValue) { "targetDiagramElementId", port1Id.get() ); var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); - List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='Redefine Port And %s')].id", + List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); @@ -215,7 +215,7 @@ public void checkInheritedPortSourceRedefinition(String parameterizedValue) { assertThat(part2Node.getBorderNodes()).hasSize(1); var v1Node = new DiagramNavigator(diagram).nodeWithLabel(LabelConstants.OPEN_QUOTE + "part" + LabelConstants.CLOSE_QUOTE + "\nv1 : Vehicle").getNode(); assertThat(v1Node.getBorderNodes()).hasSize(1); - assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals(" :>> fuelInPort")); + assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals("^fuelInPort : FuelPort")); assertThat(diagram.getEdges()).hasSize(3); }); @@ -227,7 +227,7 @@ public void checkInheritedPortSourceRedefinition(String parameterizedValue) { .verify(Duration.ofSeconds(10)); } - @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoke targeting an inherited port, THEN inherited port is redefined") + @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoke targeting an inherited port, THEN inherited port is not redefined") @GivenSysONServer({ GeneralViewInheritedPortTestProjectData.SCRIPT_PATH }) @ParameterizedTest @ValueSource(strings = { "New Binding Connector As Usage (bind)", "New Interface (connect)", "New Flow (flow)" }) @@ -258,7 +258,7 @@ public void checkInheritedPortTargetRedefinition(String parameterizedValue) { "targetDiagramElementId", inheritedPortId.get() ); var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); - List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='Redefine Port And %s')].id", + List ids = JsonPath.read(connectorToolsResult.data(), String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); @@ -284,7 +284,7 @@ public void checkInheritedPortTargetRedefinition(String parameterizedValue) { assertThat(part2Node.getBorderNodes()).hasSize(1); var v1Node = new DiagramNavigator(diagram).nodeWithLabel(LabelConstants.OPEN_QUOTE + "part" + LabelConstants.CLOSE_QUOTE + "\nv1 : Vehicle").getNode(); assertThat(v1Node.getBorderNodes()).hasSize(1); - assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals(" :>> fuelInPort")); + assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals("^fuelInPort : FuelPort")); assertThat(diagram.getEdges()).hasSize(3); }); @@ -296,7 +296,7 @@ public void checkInheritedPortTargetRedefinition(String parameterizedValue) { .verify(Duration.ofSeconds(10)); } - @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoked from an inherited port and targeting an inherited port, THEN both inherited ports are redefined") + @DisplayName("GIVEN a diagram with some inherited port, WHEN an edge tool is invoked from an inherited port and targeting an inherited port, THEN both inherited ports are not redefined") @GivenSysONServer({ GeneralViewInheritedPortTestProjectData.SCRIPT_PATH }) @ParameterizedTest @ValueSource(strings = { "New Binding Connector As Usage (bind)", "New Interface (connect)", "New Flow (flow)" }) @@ -328,7 +328,7 @@ public void checkInheritedPortAsSourceAndTargetRedefinition(String parameterized ); var connectorToolsResult = this.connectorToolsQueryRunner.run(variables); List ids = JsonPath.read(connectorToolsResult.data(), - String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='Redefine Ports And %s')].id", + String.format("$.data.viewer.editingContext.representation.description.connectorTools[?(@.label=='%s')].id", parameterizedValue)); String toolId = ids.get(0); @@ -352,10 +352,10 @@ public void checkInheritedPortAsSourceAndTargetRedefinition(String parameterized Consumer updatedDiagramContentConsumerAfterEdgeTool = assertRefreshedDiagramThat(diagram -> { var v1Node = new DiagramNavigator(diagram).nodeWithLabel(LabelConstants.OPEN_QUOTE + "part" + LabelConstants.CLOSE_QUOTE + "\nv1 : Vehicle").getNode(); assertThat(v1Node.getBorderNodes()).hasSize(1); - assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals(" :>> fuelInPort")); + assertThat(v1Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals("^fuelInPort : FuelPort")); var v2Node = new DiagramNavigator(diagram).nodeWithLabel(LabelConstants.OPEN_QUOTE + "part" + LabelConstants.CLOSE_QUOTE + "\nv2 : Vehicle").getNode(); assertThat(v2Node.getBorderNodes()).hasSize(1); - assertThat(v2Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals(" :>> fuelInPort")); + assertThat(v2Node.getBorderNodes()).allMatch(node -> node.getOutsideLabels().get(0).text().equals("^fuelInPort : FuelPort")); assertThat(diagram.getEdges()).hasSize(3); }); diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/interconnection/view/IVFlowFromPartUsageTests.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/interconnection/view/IVFlowFromPartUsageTests.java index f1ff29919..eb033f01b 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/interconnection/view/IVFlowFromPartUsageTests.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/controllers/diagrams/interconnection/view/IVFlowFromPartUsageTests.java @@ -13,10 +13,12 @@ package org.eclipse.syson.application.controllers.diagrams.interconnection.view; import static org.assertj.core.api.Assertions.assertThat; +import static org.eclipse.sirius.components.diagrams.tests.DiagramEventPayloadConsumer.assertRefreshedDiagramThat; import java.time.Duration; import java.util.UUID; import java.util.concurrent.atomic.AtomicReference; +import java.util.function.Consumer; import org.eclipse.sirius.components.collaborative.diagrams.dto.DiagramEventInput; import org.eclipse.sirius.components.collaborative.diagrams.dto.DiagramRefreshedEventPayload; @@ -29,29 +31,23 @@ import org.eclipse.sirius.components.diagrams.tests.assertions.DiagramAssertions; import org.eclipse.sirius.web.tests.services.api.IGivenInitialServerState; import org.eclipse.syson.AbstractIntegrationTests; +import org.eclipse.syson.GivenSysONServer; import org.eclipse.syson.application.controller.editingContext.checkers.SemanticCheckerService; import org.eclipse.syson.application.controllers.diagrams.checkers.CheckDiagramElementCount; -import org.eclipse.syson.application.controllers.diagrams.checkers.DiagramCheckerService; -import org.eclipse.syson.application.controllers.diagrams.checkers.IDiagramChecker; import org.eclipse.syson.application.controllers.diagrams.testers.EdgeReconnectionTester; import org.eclipse.syson.application.data.InterconnectionViewFlowConnectionTestProjectData; import org.eclipse.syson.services.SemanticRunnableFactory; import org.eclipse.syson.services.diagrams.DiagramComparator; -import org.eclipse.syson.services.diagrams.api.IGivenDiagramReference; import org.eclipse.syson.services.diagrams.api.IGivenDiagramSubscription; -import org.eclipse.syson.standard.diagrams.view.SDVDescriptionNameGenerator; import org.eclipse.syson.sysml.FlowUsage; -import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.jdbc.Sql; -import org.springframework.test.context.jdbc.SqlConfig; -import org.springframework.test.context.transaction.TestTransaction; import org.springframework.transaction.annotation.Transactional; +import reactor.core.publisher.Flux; import reactor.test.StepVerifier; /** @@ -63,14 +59,9 @@ @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) public class IVFlowFromPartUsageTests extends AbstractIntegrationTests { - private final SDVDescriptionNameGenerator descriptionNameGenerator = new SDVDescriptionNameGenerator(); - @Autowired private IGivenInitialServerState givenInitialServerState; - @Autowired - private IGivenDiagramReference givenDiagram; - @Autowired private IGivenDiagramSubscription givenDiagramSubscription; @@ -89,51 +80,38 @@ public class IVFlowFromPartUsageTests extends AbstractIntegrationTests { @Autowired private SemanticRunnableFactory semanticRunnableFactory; - private DiagramCheckerService diagramCheckerService; - - private StepVerifier.Step verifier; - - private AtomicReference diagram; - private SemanticCheckerService semanticCheckerService; - @BeforeEach - public void setUp() { - this.givenInitialServerState.initialize(); - var diagramEventInput = new DiagramEventInput(UUID.randomUUID(), - InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, + private Flux givenSubscriptionToDiagram() { + var diagramEventInput = new DiagramEventInput(UUID.randomUUID(), InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.DIAGRAM_ID); - var flux = this.givenDiagramSubscription.subscribe(diagramEventInput); - this.verifier = StepVerifier.create(flux); - this.diagram = this.givenDiagram.getDiagram(this.verifier); - this.diagramCheckerService = new DiagramCheckerService(this.diagramComparator, this.descriptionNameGenerator); - this.semanticCheckerService = new SemanticCheckerService(this.semanticRunnableFactory, this.objectSearchService, InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, null); + return this.givenDiagramSubscription.subscribe(diagramEventInput); } - @AfterEach - public void tearDown() { - if (this.verifier != null) { - this.verifier.thenCancel() - .verify(Duration.ofSeconds(10)); - } + @BeforeEach + public void setUp() { + this.givenInitialServerState.initialize(); + this.semanticCheckerService = new SemanticCheckerService(this.semanticRunnableFactory, this.objectSearchService, InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, + InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PACKAGE_1_ID); } - @Test @DisplayName("GIVEN a FlowUsage, WHEN reconnecting the target, THEN the new target of the FlowUsage is correct") - @Sql(scripts = { InterconnectionViewFlowConnectionTestProjectData.SCRIPT_PATH }, executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD, - config = @SqlConfig(transactionMode = SqlConfig.TransactionMode.ISOLATED)) - @Sql(scripts = { "/scripts/cleanup.sql" }, executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD, config = @SqlConfig(transactionMode = SqlConfig.TransactionMode.ISOLATED)) + @GivenSysONServer({ InterconnectionViewFlowConnectionTestProjectData.SCRIPT_PATH }) + @Test public void reconnectFlowUsageTarget() { - TestTransaction.flagForCommit(); - TestTransaction.end(); + var flux = this.givenSubscriptionToDiagram(); + + AtomicReference diagram = new AtomicReference<>(); + Consumer initialDiagramContentConsumer = assertRefreshedDiagramThat(diagram::set); - this.verifier.then(() -> this.edgeReconnectionTester.reconnectEdge(InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, - this.diagram, + Runnable creationToolRunnable = () -> this.edgeReconnectionTester.reconnectEdge(InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, + diagram, InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.FLOW_CONNECTION_P1_P2_ID, InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_3_ID, - ReconnectEdgeKind.TARGET)); + ReconnectEdgeKind.TARGET); - IDiagramChecker diagramCheckerTarget = (initialDiagram, newDiagram) -> { + Consumer diagramCheck = assertRefreshedDiagramThat(newDiagram -> { + var initialDiagram = diagram.get(); new CheckDiagramElementCount(this.diagramComparator) .hasNewEdgeCount(1) .check(initialDiagram, newDiagram); @@ -142,36 +120,41 @@ public void reconnectFlowUsageTarget() { DiagramAssertions.assertThat(newEdge).hasSourceId(InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_1_ID); DiagramAssertions.assertThat(newEdge).hasTargetId(InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_3_ID); DiagramAssertions.assertThat(newEdge.getStyle()).hasTargetArrow(ArrowStyle.InputFillClosedArrow); - }; - - this.diagramCheckerService.checkDiagram(diagramCheckerTarget, this.diagram, this.verifier); + }); - this.semanticCheckerService.checkElement(this.verifier, FlowUsage.class, () -> InterconnectionViewFlowConnectionTestProjectData.SemanticIds.FLOW_CONNECTION_P1_P2_ID, flowUsage -> { + Runnable semanticCheck = this.semanticCheckerService.checkElement(FlowUsage.class, () -> InterconnectionViewFlowConnectionTestProjectData.SemanticIds.FLOW_CONNECTION_P1_P2_ID, flowUsage -> { assertThat(this.identityService.getId(flowUsage.getSourceOutputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PORT_PART_1_ID); assertThat(this.identityService.getId(flowUsage.getTargetInputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PORT_PART_3_ID); - assertThat(this.identityService.getId(flowUsage.getSourceFeature())).isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PART_1_ID); - assertThat(this.identityService.getId(flowUsage.getTargetFeature().get(0))).isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PART_3_ID); }); + + StepVerifier.create(flux) + .consumeNextWith(initialDiagramContentConsumer) + .then(creationToolRunnable) + .consumeNextWith(diagramCheck) + .then(semanticCheck) + .thenCancel() + .verify(Duration.ofSeconds(10)); } - @Test @DisplayName("GIVEN a FlowUsage, WHEN reconnecting the source, THEN the new source of the FlowUsage is correct") - @Sql(scripts = { InterconnectionViewFlowConnectionTestProjectData.SCRIPT_PATH }, executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD, - config = @SqlConfig(transactionMode = SqlConfig.TransactionMode.ISOLATED)) - @Sql(scripts = { "/scripts/cleanup.sql" }, executionPhase = Sql.ExecutionPhase.AFTER_TEST_METHOD, config = @SqlConfig(transactionMode = SqlConfig.TransactionMode.ISOLATED)) + @GivenSysONServer({ InterconnectionViewFlowConnectionTestProjectData.SCRIPT_PATH }) + @Test public void reconnectFlowUsageSource() { - TestTransaction.flagForCommit(); - TestTransaction.end(); + var flux = this.givenSubscriptionToDiagram(); + + AtomicReference diagram = new AtomicReference<>(); + Consumer initialDiagramContentConsumer = assertRefreshedDiagramThat(diagram::set); - this.verifier.then(() -> this.edgeReconnectionTester.reconnectEdge(InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, - this.diagram, + Runnable creationToolRunnable = () -> this.edgeReconnectionTester.reconnectEdge(InterconnectionViewFlowConnectionTestProjectData.EDITING_CONTEXT_ID, + diagram, InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.FLOW_CONNECTION_P1_P2_ID, InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_3_ID, - ReconnectEdgeKind.SOURCE)); + ReconnectEdgeKind.SOURCE); - IDiagramChecker diagramCheckerTarget = (initialDiagram, newDiagram) -> { + Consumer diagramCheck = assertRefreshedDiagramThat(newDiagram -> { + var initialDiagram = diagram.get(); new CheckDiagramElementCount(this.diagramComparator) .hasNewEdgeCount(1) .check(initialDiagram, newDiagram); @@ -180,17 +163,21 @@ public void reconnectFlowUsageSource() { DiagramAssertions.assertThat(newEdge).hasSourceId(InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_3_ID); DiagramAssertions.assertThat(newEdge).hasTargetId(InterconnectionViewFlowConnectionTestProjectData.GraphicalIds.PORT_PART_2_ID); DiagramAssertions.assertThat(newEdge.getStyle()).hasTargetArrow(ArrowStyle.InputFillClosedArrow); - }; - - this.diagramCheckerService.checkDiagram(diagramCheckerTarget, this.diagram, this.verifier); + }); - this.semanticCheckerService.checkElement(this.verifier, FlowUsage.class, () -> InterconnectionViewFlowConnectionTestProjectData.SemanticIds.FLOW_CONNECTION_P1_P2_ID, flowUsage -> { + Runnable semanticCheck = this.semanticCheckerService.checkElement(FlowUsage.class, () -> InterconnectionViewFlowConnectionTestProjectData.SemanticIds.FLOW_CONNECTION_P1_P2_ID, flowUsage -> { assertThat(this.identityService.getId(flowUsage.getSourceOutputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PORT_PART_3_ID); assertThat(this.identityService.getId(flowUsage.getTargetInputFeature().getOwnedRedefinition().get(0).getRedefinedFeature())) .isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PORT_PART_2_ID); - assertThat(this.identityService.getId(flowUsage.getSourceFeature())).isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PART_3_ID); - assertThat(this.identityService.getId(flowUsage.getTargetFeature().get(0))).isEqualTo(InterconnectionViewFlowConnectionTestProjectData.SemanticIds.PART_2_ID); }); + + StepVerifier.create(flux) + .consumeNextWith(initialDiagramContentConsumer) + .then(creationToolRunnable) + .consumeNextWith(diagramCheck) + .then(semanticCheck) + .thenCancel() + .verify(Duration.ofSeconds(10)); } } diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/GeneralViewFlowConnectionItemUsagesProjectData.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/GeneralViewFlowConnectionItemUsagesProjectData.java index 60c045fcc..cb44d295e 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/GeneralViewFlowConnectionItemUsagesProjectData.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/GeneralViewFlowConnectionItemUsagesProjectData.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2025 Obeo. + * Copyright (c) 2025, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -70,7 +70,7 @@ public static class SemanticIds { public static final String ACTION_USAGE_3_OUT_ITEM_ID = "9b0cbdce-3f95-465f-a8d1-cb3314b271dc"; - public static final String FLOW_CONNECTION_ID = "5520bf55-5ba1-4a1e-af9a-73c49de13542"; + public static final String FLOW_CONNECTION_ID = "36ba39c8-8a64-4555-8dda-d6993178b999"; } } diff --git a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/InterconnectionViewFlowConnectionTestProjectData.java b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/InterconnectionViewFlowConnectionTestProjectData.java index 9dc0df625..f254a56eb 100644 --- a/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/InterconnectionViewFlowConnectionTestProjectData.java +++ b/backend/application/syson-application/src/test/java/org/eclipse/syson/application/data/InterconnectionViewFlowConnectionTestProjectData.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2025 Obeo. + * Copyright (c) 2025, 2026 Obeo. * This program and the accompanying materials * are made available under the terms of the Eclipse Public License v2.0 * which accompanies this distribution, and is available at @@ -44,7 +44,9 @@ public static class GraphicalIds { */ public static final class SemanticIds { - public static final String FLOW_CONNECTION_P1_P2_ID = "4c289c86-b476-4580-956a-f2e5ea0a0b5f"; + public static final String FLOW_CONNECTION_P1_P2_ID = "f51cadc9-2ad7-406d-9c07-d51cd6f241f1"; + + public static final String PACKAGE_1_ID = "1901f3c5-c4b5-49eb-9d77-8f3e898ea81c"; public static final String PART_1_ID = "f431b2c3-3854-4239-a93b-97ef8be9fc4e"; diff --git a/backend/application/syson-application/src/test/resources/scripts/database-content/GeneralView-FlowConnectionItemUsages.sql b/backend/application/syson-application/src/test/resources/scripts/database-content/GeneralView-FlowConnectionItemUsages.sql index 198956b15..c99491355 100644 --- a/backend/application/syson-application/src/test/resources/scripts/database-content/GeneralView-FlowConnectionItemUsages.sql +++ b/backend/application/syson-application/src/test/resources/scripts/database-content/GeneralView-FlowConnectionItemUsages.sql @@ -2,8 +2,9 @@ -- PostgreSQL database dump -- --- Dumped from database version 17.5 (Debian 17.5-1.pgdg120+1) --- Dumped by pg_dump version 17.5 + +-- Dumped from database version 15.15 (Debian 15.15-1.pgdg13+1) +-- Dumped by pg_dump version 18.2 SET statement_timeout = 0; SET lock_timeout = 0; @@ -19,14 +20,14 @@ SET row_security = off; -- Data for Name: semantic_data; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.semantic_data (id, created_on, last_modified_on) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be', '2025-04-17 09:41:05.614241+00', '2025-08-06 14:54:43.546903+00'); +INSERT INTO public.semantic_data (id, created_on, last_modified_on) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be', '2025-04-17 09:41:05.614241+00', '2026-02-20 14:43:31.219091+00'); -- -- Data for Name: document; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.document (id, semantic_data_id, name, content, is_read_only, created_on, last_modified_on) VALUES ('ceffd653-73d0-4fde-9d81-c9f0c17f403e', 'c63c344c-0908-43d1-b79b-0ce6871b81be', 'GeneralView-FlowConnectionItemUsages-model.sysml', '{"json":{"version":"1.0","encoding":"utf-8"},"ns":{"sysml":"http://www.eclipse.org/syson/sysml"},"migration":{"lastMigrationPerformed":"StandardLibrariesElementsReferencesMigrationParticipant","migrationVersion":"2025.8.0-202506301600"},"content":[{"id":"9284b3ff-9d43-413c-bae5-ef03f3b5fc8f","eClass":"sysml:Namespace","data":{"elementId":"d541f409-8146-4291-9198-704c4e788420","ownedRelationship":[{"id":"48948d8f-fe25-47c1-807e-4b181f2d72e0","eClass":"sysml:OwningMembership","data":{"elementId":"0d3a525d-c4e0-4cb8-a73b-bba5a64dca10","ownedRelatedElement":[{"id":"66b52226-34b6-4ff4-b372-b137a8df3ac5","eClass":"sysml:Package","data":{"declaredName":"Package 1","elementId":"cc57967e-85d3-47a2-8ac3-a90049600372","ownedRelationship":[{"id":"0d06ddc5-c47e-4b7f-b78f-0b59a57b4fd8","eClass":"sysml:OwningMembership","data":{"elementId":"276e2eec-93ac-4063-8d72-85c92283ff46","ownedRelatedElement":[{"id":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","eClass":"sysml:ActionUsage","data":{"declaredName":"action1","elementId":"b6aacedb-32e5-4593-9157-1ef7b8993d17","ownedRelationship":[{"id":"449dee8c-9868-4910-8d84-f892bf1e1337","eClass":"sysml:FeatureMembership","data":{"elementId":"701a51c3-77f9-456f-b11c-e61ee87646a0","ownedRelatedElement":[{"id":"c957153f-04c2-4a0a-80dd-fe190c51c54b","eClass":"sysml:ItemUsage","data":{"declaredName":"item1Out","elementId":"b6111b6c-6293-44e2-8aee-fe7c2094b34e","direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"a78c6c22-9c83-45ba-b961-f86b70408651","eClass":"sysml:OwningMembership","data":{"elementId":"aed0ad19-ab9d-47a1-87d9-7df7fe97933b","ownedRelatedElement":[{"id":"ab0ebe23-4e1d-4239-98e0-6673844c7618","eClass":"sysml:ActionUsage","data":{"declaredName":"action2","elementId":"2cc270da-0f3b-4e67-b1ae-c940b5b9d786","ownedRelationship":[{"id":"8e0e417c-04cf-469f-b986-1e82563082a9","eClass":"sysml:FeatureMembership","data":{"elementId":"510a83f6-aea0-4772-8c62-cbd8b91fb493","ownedRelatedElement":[{"id":"8828028c-debc-4f23-979d-92aad67f6bc1","eClass":"sysml:ItemUsage","data":{"declaredName":"item2In","elementId":"9731e6d2-df25-4548-81fb-1c7bbe99e21a","direction":"in","isComposite":true}}]}},{"id":"94df1361-f1a7-4edf-9be9-562a4720db53","eClass":"sysml:FeatureMembership","data":{"elementId":"774e1b74-3dae-4039-be7a-2b407cc4258b","ownedRelatedElement":[{"id":"9d4cd5b1-96f8-44fd-ba56-54434f957403","eClass":"sysml:ItemUsage","data":{"declaredName":"item2Out","elementId":"61d5882d-fcf3-4d7a-b6b9-1675ede173e9","direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"9f83b1ce-1cba-4dea-904d-73af28ed33c7","eClass":"sysml:OwningMembership","data":{"elementId":"dec9558b-0c9b-4874-985b-191ec2179dea","ownedRelatedElement":[{"id":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","eClass":"sysml:ActionUsage","data":{"declaredName":"action3","elementId":"cb93e8a3-36b7-4d85-946e-6af8c76369c5","ownedRelationship":[{"id":"b08b56df-5c6e-4c8d-b72c-93657595fdce","eClass":"sysml:FeatureMembership","data":{"elementId":"e8b9d435-ff8d-4b68-a141-cc309fbdb9e9","ownedRelatedElement":[{"id":"b88f87ce-d50b-4093-9d69-d016558f694f","eClass":"sysml:ItemUsage","data":{"declaredName":"item3In","elementId":"64c2c50f-a8e6-4343-b3c0-29ea3cd2261e","direction":"in","isComposite":true}}]}},{"id":"93210b78-0640-474e-9f97-aa6a85f86037","eClass":"sysml:FeatureMembership","data":{"elementId":"43761cce-c865-4215-b9f1-0814942fcc90","ownedRelatedElement":[{"id":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","eClass":"sysml:ItemUsage","data":{"declaredName":"item3Out","elementId":"6a21ed27-6056-4a33-b24d-5a958b893c41","direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"b0baecdb-350e-4887-8930-6a05dc2f1dbf","eClass":"sysml:FeatureMembership","data":{"elementId":"de03fe00-2de8-4b0a-852e-610e1230c751"}},{"id":"937a2b8d-02c7-46dc-8916-865535ad5a9a","eClass":"sysml:OwningMembership","data":{"elementId":"309fe677-c4e7-41d7-9d53-6187f8b548fa","ownedRelatedElement":[{"id":"5520bf55-5ba1-4a1e-af9a-73c49de13542","eClass":"sysml:FlowUsage","data":{"elementId":"52bdfa95-1f66-4f6f-9d64-ffe252620cda","ownedRelationship":[{"id":"c206b8e4-640e-4afb-ba5b-88087fa9dab8","eClass":"sysml:EndFeatureMembership","data":{"elementId":"50b0b8d2-8c59-4726-bf53-fdf9a80140c3","ownedRelatedElement":[{"id":"8baccc8c-43e5-4a00-b1f6-40760aa6f6f0","eClass":"sysml:FlowEnd","data":{"elementId":"6eff18fd-7cd9-454b-b60d-8a257749d62f","ownedRelationship":[{"id":"7ca802db-27fb-4e74-87ea-f24ce2fc64b5","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"cfbd9e2a-1394-4654-bfbe-ae270ff8976b","referencedFeature":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6"}},{"id":"d9fe3f0d-1992-49b3-9729-e8777ebb6e78","eClass":"sysml:EndFeatureMembership","data":{"elementId":"c7a4ee1f-aae2-4ac4-847a-4fb4ccb68ecd","ownedRelatedElement":[{"id":"6e55f5c5-62a0-4897-a0e1-abd912e4ec5f","eClass":"sysml:ReferenceUsage","data":{"elementId":"9d35e653-8e26-42be-a8eb-dab948208858","ownedRelationship":[{"id":"1a6f5dd5-e5b7-424e-9ef4-d55eabfc6d49","eClass":"sysml:Redefinition","data":{"elementId":"3c7f4297-002b-4d25-982d-872202450e9f","redefinedFeature":"c957153f-04c2-4a0a-80dd-fe190c51c54b","redefiningFeature":"6e55f5c5-62a0-4897-a0e1-abd912e4ec5f"}}]}}]}}]}}]}},{"id":"9e71a58e-e2ab-454e-9599-42574463d654","eClass":"sysml:EndFeatureMembership","data":{"elementId":"0c00c58f-278b-44ac-a42d-7bf15b004485","ownedRelatedElement":[{"id":"092a5942-3c10-4d49-ba02-8f37b7ecb0f1","eClass":"sysml:FlowEnd","data":{"elementId":"24f3c67a-b975-405b-beb5-7c4857ea01f3","ownedRelationship":[{"id":"ed4564dd-c51b-42d3-8e32-465c03583d64","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"ed588af5-e835-4516-bf76-678494c21f7f","referencedFeature":"ab0ebe23-4e1d-4239-98e0-6673844c7618"}},{"id":"014b99f1-6b47-4c9a-8f02-582708b331e1","eClass":"sysml:EndFeatureMembership","data":{"elementId":"4ecd9471-5d3b-49de-82e4-c315963b98cd","ownedRelatedElement":[{"id":"a4e2480c-35be-4ab9-9a9c-c5ec908d80ea","eClass":"sysml:ReferenceUsage","data":{"elementId":"923cab02-1651-44ae-a629-72f3d8206af2","ownedRelationship":[{"id":"e4b7fa2a-b440-469a-a895-f5f99f836d28","eClass":"sysml:Redefinition","data":{"elementId":"8480c872-59ce-4a62-a7c7-c936b55091ba","redefinedFeature":"8828028c-debc-4f23-979d-92aad67f6bc1","redefiningFeature":"a4e2480c-35be-4ab9-9a9c-c5ec908d80ea"}}]}}]}}]}}]}}]}}]}},{"id":"b5feb5fc-43cc-405c-8d92-a298d2ea4ffe","eClass":"sysml:OwningMembership","data":{"elementId":"537ebf93-82fa-4a64-abc8-07852a1c87a3","ownedRelatedElement":[{"id":"2b844dea-da40-40c9-ae3a-4ece6024fe2d","eClass":"sysml:ViewUsage","data":{"declaredName":"GeneralView-FlowConnectionItemUsages Diagram","elementId":"e5fea0b3-dcf2-41ee-8eed-dc63b21e0c8a","ownedRelationship":[{"id":"6a7772c1-859e-4c55-a724-7d7ceb4c5b7b","eClass":"sysml:FeatureTyping","data":{"elementId":"dccb12f0-9cbd-4c45-ba7e-f5a0c90dd2d0","type":"sysml:ViewDefinition sysmllibrary:///faf517ae-dbcd-30a4-b3b9-3d9cb3bbf5c1#03904fdf-d6f2-57b1-92d5-95d36b8208dc","typedFeature":"2b844dea-da40-40c9-ae3a-4ece6024fe2d"}},{"id":"555676eb-738b-4835-88a8-a5ad383fa2e0","eClass":"sysml:MembershipExpose","data":{"elementId":"8bf84086-72f2-4892-a3dc-c5a4f82128ae","importedMembership":"0d06ddc5-c47e-4b7f-b78f-0b59a57b4fd8"}},{"id":"07689442-4caf-49d3-987e-11267764351b","eClass":"sysml:MembershipExpose","data":{"elementId":"3964a084-e2c3-4cea-ba3c-2d89a4ff85fb","importedMembership":"a78c6c22-9c83-45ba-b961-f86b70408651"}},{"id":"7242b1df-3f52-4350-8e21-048c016e6e55","eClass":"sysml:MembershipExpose","data":{"elementId":"ca1c0946-f6b6-4d7c-abfa-34caaa0b2d4c","importedMembership":"9f83b1ce-1cba-4dea-904d-73af28ed33c7"}}]}}]}}]}}]}}]}}]}', false, '2025-08-06 14:54:43.5469+00', '2025-08-06 14:54:43.5469+00'); +INSERT INTO public.document (id, semantic_data_id, name, content, created_on, last_modified_on, is_read_only) VALUES ('ceffd653-73d0-4fde-9d81-c9f0c17f403e', 'c63c344c-0908-43d1-b79b-0ce6871b81be', 'GeneralView-FlowConnectionItemUsages-model.sysml', '{"json":{"version":"1.0","encoding":"utf-8"},"ns":{"sysml":"http://www.eclipse.org/syson/sysml"},"migration":{"lastMigrationPerformed":"DiagramToolbarMigrationParticipant","migrationVersion":"2026.3.0-202602171555"},"content":[{"id":"9284b3ff-9d43-413c-bae5-ef03f3b5fc8f","eClass":"sysml:Namespace","data":{"elementId":"d541f409-8146-4291-9198-704c4e788420","ownedRelationship":[{"id":"48948d8f-fe25-47c1-807e-4b181f2d72e0","eClass":"sysml:OwningMembership","data":{"elementId":"0d3a525d-c4e0-4cb8-a73b-bba5a64dca10","ownedRelatedElement":[{"id":"66b52226-34b6-4ff4-b372-b137a8df3ac5","eClass":"sysml:Package","data":{"declaredName":"Package 1","elementId":"cc57967e-85d3-47a2-8ac3-a90049600372","ownedRelationship":[{"id":"0d06ddc5-c47e-4b7f-b78f-0b59a57b4fd8","eClass":"sysml:OwningMembership","data":{"elementId":"276e2eec-93ac-4063-8d72-85c92283ff46","ownedRelatedElement":[{"id":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","eClass":"sysml:ActionUsage","data":{"declaredName":"action1","elementId":"b6aacedb-32e5-4593-9157-1ef7b8993d17","ownedRelationship":[{"id":"449dee8c-9868-4910-8d84-f892bf1e1337","eClass":"sysml:FeatureMembership","data":{"elementId":"701a51c3-77f9-456f-b11c-e61ee87646a0","ownedRelatedElement":[{"id":"c957153f-04c2-4a0a-80dd-fe190c51c54b","eClass":"sysml:ItemUsage","data":{"declaredName":"item1Out","elementId":"b6111b6c-6293-44e2-8aee-fe7c2094b34e","ownedRelationship":[{"id":"303b2d88-5f48-4e8c-be05-310adbd9e5a3","eClass":"sysml:FeatureMembership","data":{"elementId":"f8f7f827-7f51-48a5-abe4-d26eb0b9123c","ownedRelatedElement":[{"id":"065aa82e-479f-460a-9315-1e00ee0c8b85","eClass":"sysml:ReferenceUsage","data":{"declaredName":"reference1","elementId":"044d6c32-f359-4508-a131-e1dfd52d14b3"}}]}}],"direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"a78c6c22-9c83-45ba-b961-f86b70408651","eClass":"sysml:OwningMembership","data":{"elementId":"aed0ad19-ab9d-47a1-87d9-7df7fe97933b","ownedRelatedElement":[{"id":"ab0ebe23-4e1d-4239-98e0-6673844c7618","eClass":"sysml:ActionUsage","data":{"declaredName":"action2","elementId":"2cc270da-0f3b-4e67-b1ae-c940b5b9d786","ownedRelationship":[{"id":"8e0e417c-04cf-469f-b986-1e82563082a9","eClass":"sysml:FeatureMembership","data":{"elementId":"510a83f6-aea0-4772-8c62-cbd8b91fb493","ownedRelatedElement":[{"id":"8828028c-debc-4f23-979d-92aad67f6bc1","eClass":"sysml:ItemUsage","data":{"declaredName":"item2In","elementId":"9731e6d2-df25-4548-81fb-1c7bbe99e21a","ownedRelationship":[{"id":"02fe5d00-c047-477d-bf88-1e96a9c9d2a1","eClass":"sysml:FeatureMembership","data":{"elementId":"72b42c11-5108-4fa1-926f-b859df397a3d","ownedRelatedElement":[{"id":"a77bb371-d430-471a-90b5-35e964382872","eClass":"sysml:ReferenceUsage","data":{"declaredName":"reference1","elementId":"8c9add32-a078-4445-bc45-c067089ebb31"}}]}}],"direction":"in","isComposite":true}}]}},{"id":"94df1361-f1a7-4edf-9be9-562a4720db53","eClass":"sysml:FeatureMembership","data":{"elementId":"774e1b74-3dae-4039-be7a-2b407cc4258b","ownedRelatedElement":[{"id":"9d4cd5b1-96f8-44fd-ba56-54434f957403","eClass":"sysml:ItemUsage","data":{"declaredName":"item2Out","elementId":"61d5882d-fcf3-4d7a-b6b9-1675ede173e9","direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"9f83b1ce-1cba-4dea-904d-73af28ed33c7","eClass":"sysml:OwningMembership","data":{"elementId":"dec9558b-0c9b-4874-985b-191ec2179dea","ownedRelatedElement":[{"id":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","eClass":"sysml:ActionUsage","data":{"declaredName":"action3","elementId":"cb93e8a3-36b7-4d85-946e-6af8c76369c5","ownedRelationship":[{"id":"b08b56df-5c6e-4c8d-b72c-93657595fdce","eClass":"sysml:FeatureMembership","data":{"elementId":"e8b9d435-ff8d-4b68-a141-cc309fbdb9e9","ownedRelatedElement":[{"id":"b88f87ce-d50b-4093-9d69-d016558f694f","eClass":"sysml:ItemUsage","data":{"declaredName":"item3In","elementId":"64c2c50f-a8e6-4343-b3c0-29ea3cd2261e","direction":"in","isComposite":true}}]}},{"id":"93210b78-0640-474e-9f97-aa6a85f86037","eClass":"sysml:FeatureMembership","data":{"elementId":"43761cce-c865-4215-b9f1-0814942fcc90","ownedRelatedElement":[{"id":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","eClass":"sysml:ItemUsage","data":{"declaredName":"item3Out","elementId":"6a21ed27-6056-4a33-b24d-5a958b893c41","direction":"out","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"b0baecdb-350e-4887-8930-6a05dc2f1dbf","eClass":"sysml:FeatureMembership","data":{"elementId":"de03fe00-2de8-4b0a-852e-610e1230c751"}},{"id":"b5feb5fc-43cc-405c-8d92-a298d2ea4ffe","eClass":"sysml:OwningMembership","data":{"elementId":"537ebf93-82fa-4a64-abc8-07852a1c87a3","ownedRelatedElement":[{"id":"2b844dea-da40-40c9-ae3a-4ece6024fe2d","eClass":"sysml:ViewUsage","data":{"declaredName":"GeneralView-FlowConnectionItemUsages Diagram","elementId":"e5fea0b3-dcf2-41ee-8eed-dc63b21e0c8a","ownedRelationship":[{"id":"6a7772c1-859e-4c55-a724-7d7ceb4c5b7b","eClass":"sysml:FeatureTyping","data":{"elementId":"dccb12f0-9cbd-4c45-ba7e-f5a0c90dd2d0","type":"sysml:ViewDefinition sysmllibrary:///faf517ae-dbcd-30a4-b3b9-3d9cb3bbf5c1#03904fdf-d6f2-57b1-92d5-95d36b8208dc","typedFeature":"2b844dea-da40-40c9-ae3a-4ece6024fe2d"}},{"id":"555676eb-738b-4835-88a8-a5ad383fa2e0","eClass":"sysml:MembershipExpose","data":{"elementId":"8bf84086-72f2-4892-a3dc-c5a4f82128ae","importedMembership":"0d06ddc5-c47e-4b7f-b78f-0b59a57b4fd8"}},{"id":"07689442-4caf-49d3-987e-11267764351b","eClass":"sysml:MembershipExpose","data":{"elementId":"3964a084-e2c3-4cea-ba3c-2d89a4ff85fb","importedMembership":"a78c6c22-9c83-45ba-b961-f86b70408651"}},{"id":"7242b1df-3f52-4350-8e21-048c016e6e55","eClass":"sysml:MembershipExpose","data":{"elementId":"ca1c0946-f6b6-4d7c-abfa-34caaa0b2d4c","importedMembership":"9f83b1ce-1cba-4dea-904d-73af28ed33c7"}}]}}]}},{"id":"56234347-6dce-4395-a729-533e7fee23e6","eClass":"sysml:OwningMembership","data":{"elementId":"1176297f-8bd7-4036-b66a-1846d2c179f5","ownedRelatedElement":[{"id":"36ba39c8-8a64-4555-8dda-d6993178b999","eClass":"sysml:FlowUsage","data":{"elementId":"3bb2a84c-f174-4e5f-a028-f8aedba9d148","ownedRelationship":[{"id":"741c2875-9161-4fa2-a320-9e302dc7f805","eClass":"sysml:EndFeatureMembership","data":{"elementId":"b91141e5-e10b-4752-a952-cd2e227bd54f","ownedRelatedElement":[{"id":"54f8c242-9bfd-4a8a-9107-56d11cf449d5","eClass":"sysml:FlowEnd","data":{"elementId":"8b83aac8-9571-483a-8a14-b923958858f1","ownedRelationship":[{"id":"818adb4e-b014-4505-b591-6247a018a148","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"48ffc4de-65ab-489b-82b7-86c5f296081a","ownedRelatedElement":[{"id":"2649e84d-f03d-4420-ba1e-e568eec05a23","eClass":"sysml:Feature","data":{"elementId":"76cd4900-d477-4807-b527-bdb15e0a841d","ownedRelationship":[{"id":"a23b0734-fcef-438c-b046-dc073f16934b","eClass":"sysml:FeatureChaining","data":{"elementId":"92d23330-abee-44f8-a795-711d065ef9e0","chainingFeature":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6"}},{"id":"6dc83eef-e512-4822-ac09-6ed65d6773cf","eClass":"sysml:FeatureChaining","data":{"elementId":"dc316402-35ec-49af-b356-f2ccb6d14e85","chainingFeature":"c957153f-04c2-4a0a-80dd-fe190c51c54b"}}]}}],"referencedFeature":"2649e84d-f03d-4420-ba1e-e568eec05a23"}},{"id":"9b83bbec-bd08-4e4e-8e89-75a1d2d46aec","eClass":"sysml:FeatureMembership","data":{"elementId":"3b3c76a8-e025-49e2-9839-ebb18f28e312","ownedRelatedElement":[{"id":"f6ae0085-e5c7-4ae9-aa9c-a364872bcc8b","eClass":"sysml:ReferenceUsage","data":{"elementId":"c47331da-e7b9-4e84-8128-06b7f071ff93","ownedRelationship":[{"id":"5f055767-64d7-411e-95e7-a12fc4d92013","eClass":"sysml:Redefinition","data":{"elementId":"0bf34a70-e1bb-4a0b-87c3-ef46239ed25e","redefinedFeature":"c957153f-04c2-4a0a-80dd-fe190c51c54b","redefiningFeature":"36ba39c8-8a64-4555-8dda-d6993178b999"}}]}}]}}],"isEnd":true}}]}},{"id":"d6243b06-8657-4b9e-a711-d1cfe84232a7","eClass":"sysml:EndFeatureMembership","data":{"elementId":"80cfe430-5767-401c-8db2-2ffa3ae6f4a3","ownedRelatedElement":[{"id":"c49a3f5d-924d-401a-b0a3-0c8cbfc3ad1a","eClass":"sysml:FlowEnd","data":{"elementId":"7a9c922f-24ea-464c-b878-8c37e60de74e","ownedRelationship":[{"id":"fc738485-ce9f-4252-ac52-f420d93f6e21","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"aa58a765-826c-4030-bca9-5cc48bd5eea2","ownedRelatedElement":[{"id":"425f5c97-cb52-4a2a-bc32-5e4d996c0fb1","eClass":"sysml:Feature","data":{"elementId":"d07e6fe0-c1cb-49f2-8121-cf32ce9c634d","ownedRelationship":[{"id":"63d917f8-b58c-4ab6-9806-321328cede75","eClass":"sysml:FeatureChaining","data":{"elementId":"2f243750-0947-49e8-bf8c-047d9afe09f8","chainingFeature":"ab0ebe23-4e1d-4239-98e0-6673844c7618"}},{"id":"fa02d6ca-63ec-4002-91ee-a064b78789aa","eClass":"sysml:FeatureChaining","data":{"elementId":"acad5a6e-d74f-4637-a2d8-dd3b08128a1e","chainingFeature":"8828028c-debc-4f23-979d-92aad67f6bc1"}}]}}],"referencedFeature":"425f5c97-cb52-4a2a-bc32-5e4d996c0fb1"}},{"id":"952c2b70-e616-4629-8ea8-e3fe885d6032","eClass":"sysml:FeatureMembership","data":{"elementId":"b733434a-6520-4fce-8489-70f87cf5b61f","ownedRelatedElement":[{"id":"c32c7a44-8ae9-4538-b8ff-e8bbffe8f461","eClass":"sysml:ReferenceUsage","data":{"elementId":"f9464836-f1c8-4b60-af3a-658f32c2ed96","ownedRelationship":[{"id":"c4d18a76-6ffe-47e9-877f-ddca6092087b","eClass":"sysml:Redefinition","data":{"elementId":"116eac78-6e05-4a39-9bc2-51480eecd3d5","redefinedFeature":"8828028c-debc-4f23-979d-92aad67f6bc1","redefiningFeature":"36ba39c8-8a64-4555-8dda-d6993178b999"}}]}}]}}],"isEnd":true}}]}}]}}]}}]}}]}}]}}]}', '2026-02-20 14:43:31.219086+00', '2026-02-20 14:43:31.219086+00', false); -- @@ -71,14 +72,14 @@ INSERT INTO public.project_semantic_data (id, project_id, semantic_data_id, name -- Data for Name: representation_metadata; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.representation_metadata (id, representation_metadata_id, target_object_id, description_id, label, kind, created_on, last_modified_on, documentation, semantic_data_id) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be#6b59ec09-86ca-4155-a315-ebc4209a80b8', '6b59ec09-86ca-4155-a315-ebc4209a80b8', '2b844dea-da40-40c9-ae3a-4ece6024fe2d', 'siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089', 'GeneralView-FlowConnectionItemUsages Diagram', 'siriusComponents://representation?type=Diagram', '2025-05-07 09:20:18.942572+00', '2025-05-07 09:20:18.942572+00', '', 'c63c344c-0908-43d1-b79b-0ce6871b81be'); +INSERT INTO public.representation_metadata (id, target_object_id, description_id, label, kind, created_on, last_modified_on, documentation, semantic_data_id, representation_metadata_id) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be#6b59ec09-86ca-4155-a315-ebc4209a80b8', '2b844dea-da40-40c9-ae3a-4ece6024fe2d', 'siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089', 'GeneralView-FlowConnectionItemUsages Diagram', 'siriusComponents://representation?type=Diagram', '2025-05-07 09:20:18.942572+00', '2026-02-20 14:42:13.995935+00', '', 'c63c344c-0908-43d1-b79b-0ce6871b81be', '6b59ec09-86ca-4155-a315-ebc4209a80b8'); -- -- Data for Name: representation_content; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.representation_content (id, representation_metadata_id, semantic_data_id, content, last_migration_performed, migration_version, created_on, last_modified_on) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be#6b59ec09-86ca-4155-a315-ebc4209a80b8', '6b59ec09-86ca-4155-a315-ebc4209a80b8', 'c63c344c-0908-43d1-b79b-0ce6871b81be', '{"id":"6b59ec09-86ca-4155-a315-ebc4209a80b8","kind":"siriusComponents://representation?type=Diagram","targetObjectId":"2b844dea-da40-40c9-ae3a-4ece6024fe2d","descriptionId":"siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089","nodes":[{"id":"6ecd5ce8-cf92-36f4-98d5-81f63382a27e","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"2fdb4a35-2001-3390-ba22-6ab1a7506457","text":"«action»\naction2","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","type":"node:image","targetObjectId":"8828028c-debc-4f23-979d-92aad67f6bc1","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"5b36fc34-39a4-3f21-9a6d-67ecfcbbb475","text":"item2In","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"overflowStrategy":"NONE","textAlign":"LEFT"}],"style":{"imageURL":"/images/feature_in.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"bb06c37a-6235-3b64-93e5-bf9018e5ac95","type":"node:image","targetObjectId":"9d4cd5b1-96f8-44fd-ba56-54434f957403","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"9076832c-9b33-391f-b6fc-603fefe75e66","text":"item2Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"overflowStrategy":"NONE","textAlign":"LEFT"}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"bd014c7a-2313-372b-afe1-5ae5835a80b2","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"c6e6ae09-5fac-36b4-a0da-1ead9257865d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"986a428e-5363-3c58-917f-2e20ad8f160f","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d93c3131-6432-3596-a7d5-ec503801a6c4","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"cb903560-4358-3960-b640-04556c9a1905","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"e41586f5-2e6a-321b-b8be-f4b38d3af6e3","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372","type":"node:icon-label","targetObjectId":"8828028c-debc-4f23-979d-92aad67f6bc1","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"55313f71-eb5f-352c-8953-55d3b7619a3d","text":"in item2In","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageIn.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"38e689f7-7c47-3ac5-9b97-0d5be26aa665","type":"node:icon-label","targetObjectId":"9d4cd5b1-96f8-44fd-ba56-54434f957403","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"770da26b-6242-3906-bdb6-2314d3f6e683","text":"out item2Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c1a42196-541a-366c-8316-d781831b95bc","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"89a6a30f-a466-31d4-b3f3-006ba566ab67","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ce44a46c-2987-37f9-bdc9-a40776b50c0a","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=92da4396-4ee0-33aa-a70e-51e1939cd77f","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"60ae37d1-66fb-32d4-91cf-11323a3ec6f6","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"656e88a8-d315-327e-98c1-4a28a766bf7b","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"e8790876-1c9c-38ed-9aa8-e0be4db86197","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"d9f92779-1020-3d79-8171-343d0ec6918c","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"acc1eb5b-1b7f-3ea9-9aba-745131468194","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"8996c5aa-00f3-3812-a60b-bdf8cd472320","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6a047222-1fc1-3840-a6ee-2c8ccbaf45ff","text":"«action»\naction3","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"87610918-cc3c-32f3-b9e9-2c8fec982688","type":"node:image","targetObjectId":"b88f87ce-d50b-4093-9d69-d016558f694f","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"07872f72-9547-3290-855a-26f90ebb217f","text":"item3In","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"overflowStrategy":"NONE","textAlign":"LEFT"}],"style":{"imageURL":"/images/feature_in.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"66aa0a1d-2d8a-320a-80c4-38a2621d64ca","type":"node:image","targetObjectId":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"2bbe4115-4e7e-39e6-943a-56202442aa34","text":"item3Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"overflowStrategy":"NONE","textAlign":"LEFT"}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"c2752e63-badd-3d62-8ece-22c726509bfc","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4664dcc0-29f8-3f2c-ba28-04dc6cb3bcc6","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"371d454f-cb12-3702-9ced-3d182b0f4314","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"be540e9b-2987-377c-be91-07d18c752cfc","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"7efc5832-1ad4-3447-8902-c60732933ce6","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"d5086016-2981-3d70-8b07-d748c5a4e7d7","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"e085cc24-4786-37f2-9de8-c1964888bf40","type":"node:icon-label","targetObjectId":"b88f87ce-d50b-4093-9d69-d016558f694f","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"750307ba-7b03-38b3-9769-add658d545e7","text":"in item3In","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageIn.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"caaec618-c81f-3ef6-b03e-b1c6b9a50210","type":"node:icon-label","targetObjectId":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"2c19d2fa-cbd3-3411-90d0-9de3429f1809","text":"out item3Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"dbcedfce-360b-3987-a6b2-19d37f8ebbee","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c11d2cb1-0e8d-39f8-a6b7-240ff965b15e","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=92da4396-4ee0-33aa-a70e-51e1939cd77f","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"89217ad7-decc-3441-b2b7-556fece64661","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"5323fa7b-6836-3271-9902-d6c7751e7720","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"b6aef3f8-4b14-3eb5-9136-89be1d1159e2","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2e3a642b-5391-38f6-b47e-5d1ce67517b1","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"c9d5c8c3-7019-322c-9184-8c49bf1940fd","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"64bd3aa5-7e7b-3895-bb9b-05ce60a5d721","text":"«action»\naction1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"554af08e-3830-33ca-86f2-2f2aa1469585","type":"node:image","targetObjectId":"c957153f-04c2-4a0a-80dd-fe190c51c54b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item1Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"bff357b3-75db-331f-8589-fd8f12f34dc0","text":"item1Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"overflowStrategy":"NONE","textAlign":"LEFT"}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"db58623a-850e-33f8-86aa-32804678bf33","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"21950731-ce7e-3f5d-94a0-3cf26b9e517a","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"30f60d84-e58c-3b8c-851b-6ec99ecc98c1","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"cc2f859f-fb21-3ee0-9ded-b42d4aabccd8","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"7948b5da-cf51-31ab-9a8d-f557f84e2c09","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"4b73b4e3-6f9e-34a7-991a-b180f9236946","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"1fec1481-5c46-3807-9110-84821e8697d6","type":"node:icon-label","targetObjectId":"c957153f-04c2-4a0a-80dd-fe190c51c54b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item1Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"67f0a0e8-7ca5-313c-bd6b-2919f9aac900","text":"out item1Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"296f6d23-ce2d-3630-962f-54cd256be0ac","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"8ceecdd8-decb-3422-bd6c-45c8a2004177","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"8cb1f80e-10cb-3135-8310-cc494e36ddc7","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=92da4396-4ee0-33aa-a70e-51e1939cd77f","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"327cae28-81e2-3b03-b89e-73d1aee92964","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5bf244a9-a090-3e61-9819-13c577289bcc","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"12884009-7632-395c-9a3b-867cd15c8061","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1f4d562e-833d-3bdf-a8dc-6e6d15ba39d1","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"edges":[{"id":"08697a19-1d8a-33ba-be01-dc1acafa8ac8","type":"edge:straight","targetObjectId":"5520bf55-5ba1-4a1e-af9a-73c49de13542","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=FlowUsage","targetObjectLabel":"FlowUsage","descriptionId":"siriusComponents://edgeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=ae78d7f3-ee33-3f50-9749-8c4203f1ca9c","beginLabel":null,"centerLabel":{"id":"71d2d35a-c8c8-3709-b9b8-effa66fa1a20","type":"label:edge-center","text":"","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null}},"endLabel":null,"sourceId":"554af08e-3830-33ca-86f2-2f2aa1469585","targetId":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","modifiers":[],"state":"Normal","style":{"size":1,"lineStyle":"Solid","sourceArrow":"None","targetArrow":"InputFillClosedArrow","color":"#000000"},"centerLabelEditable":true}],"layoutData":{"nodeLayoutData":{"1fec1481-5c46-3807-9110-84821e8697d6":{"id":"1fec1481-5c46-3807-9110-84821e8697d6","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd":{"id":"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"handleLayoutData":[]},"caaec618-c81f-3ef6-b03e-b1c6b9a50210":{"id":"caaec618-c81f-3ef6-b03e-b1c6b9a50210","position":{"x":0.0,"y":46.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"c1a42196-541a-366c-8316-d781831b95bc":{"id":"c1a42196-541a-366c-8316-d781831b95bc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"db58623a-850e-33f8-86aa-32804678bf33":{"id":"db58623a-850e-33f8-86aa-32804678bf33","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"d9f92779-1020-3d79-8171-343d0ec6918c":{"id":"d9f92779-1020-3d79-8171-343d0ec6918c","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"8cb1f80e-10cb-3135-8310-cc494e36ddc7":{"id":"8cb1f80e-10cb-3135-8310-cc494e36ddc7","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"66aa0a1d-2d8a-320a-80c4-38a2621d64ca":{"id":"66aa0a1d-2d8a-320a-80c4-38a2621d64ca","position":{"x":152.0,"y":44.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372":{"id":"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"c11d2cb1-0e8d-39f8-a6b7-240ff965b15e":{"id":"c11d2cb1-0e8d-39f8-a6b7-240ff965b15e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"7efc5832-1ad4-3447-8902-c60732933ce6":{"id":"7efc5832-1ad4-3447-8902-c60732933ce6","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":72.0},"resizedByUser":false,"handleLayoutData":[]},"30f60d84-e58c-3b8c-851b-6ec99ecc98c1":{"id":"30f60d84-e58c-3b8c-851b-6ec99ecc98c1","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"c9d5c8c3-7019-322c-9184-8c49bf1940fd":{"id":"c9d5c8c3-7019-322c-9184-8c49bf1940fd","position":{"x":229.0,"y":12.0},"size":{"width":157.0,"height":111.0},"resizedByUser":false,"handleLayoutData":[]},"7948b5da-cf51-31ab-9a8d-f557f84e2c09":{"id":"7948b5da-cf51-31ab-9a8d-f557f84e2c09","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"b6aef3f8-4b14-3eb5-9136-89be1d1159e2":{"id":"b6aef3f8-4b14-3eb5-9136-89be1d1159e2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"87610918-cc3c-32f3-b9e9-2c8fec982688":{"id":"87610918-cc3c-32f3-b9e9-2c8fec982688","position":{"x":152.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6":{"id":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","position":{"x":152.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"554af08e-3830-33ca-86f2-2f2aa1469585":{"id":"554af08e-3830-33ca-86f2-2f2aa1469585","position":{"x":152.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"bb06c37a-6235-3b64-93e5-bf9018e5ac95":{"id":"bb06c37a-6235-3b64-93e5-bf9018e5ac95","position":{"x":152.0,"y":44.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"986a428e-5363-3c58-917f-2e20ad8f160f":{"id":"986a428e-5363-3c58-917f-2e20ad8f160f","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"bd014c7a-2313-372b-afe1-5ae5835a80b2":{"id":"bd014c7a-2313-372b-afe1-5ae5835a80b2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"8996c5aa-00f3-3812-a60b-bdf8cd472320":{"id":"8996c5aa-00f3-3812-a60b-bdf8cd472320","position":{"x":224.0,"y":-171.2248995983936},"size":{"width":157.0,"height":123.0},"resizedByUser":false,"handleLayoutData":[]},"296f6d23-ce2d-3630-962f-54cd256be0ac":{"id":"296f6d23-ce2d-3630-962f-54cd256be0ac","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"e085cc24-4786-37f2-9de8-c1964888bf40":{"id":"e085cc24-4786-37f2-9de8-c1964888bf40","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"6ecd5ce8-cf92-36f4-98d5-81f63382a27e":{"id":"6ecd5ce8-cf92-36f4-98d5-81f63382a27e","position":{"x":229.0,"y":203.0},"size":{"width":157.0,"height":123.0},"resizedByUser":false,"handleLayoutData":[]},"656e88a8-d315-327e-98c1-4a28a766bf7b":{"id":"656e88a8-d315-327e-98c1-4a28a766bf7b","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"handleLayoutData":[]},"5bf244a9-a090-3e61-9819-13c577289bcc":{"id":"5bf244a9-a090-3e61-9819-13c577289bcc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"handleLayoutData":[]},"371d454f-cb12-3702-9ced-3d182b0f4314":{"id":"371d454f-cb12-3702-9ced-3d182b0f4314","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"38e689f7-7c47-3ac5-9b97-0d5be26aa665":{"id":"38e689f7-7c47-3ac5-9b97-0d5be26aa665","position":{"x":0.0,"y":46.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"handleLayoutData":[]},"c2752e63-badd-3d62-8ece-22c726509bfc":{"id":"c2752e63-badd-3d62-8ece-22c726509bfc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"cb903560-4358-3960-b640-04556c9a1905":{"id":"cb903560-4358-3960-b640-04556c9a1905","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":72.0},"resizedByUser":false,"handleLayoutData":[]},"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4":{"id":"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"ce44a46c-2987-37f9-bdc9-a40776b50c0a":{"id":"ce44a46c-2987-37f9-bdc9-a40776b50c0a","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]},"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95":{"id":"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"handleLayoutData":[]}},"edgeLayoutData":{"08697a19-1d8a-33ba-be01-dc1acafa8ac8":{"id":"08697a19-1d8a-33ba-be01-dc1acafa8ac8","bendingPoints":[],"edgeAnchorLayoutData":[]}},"labelLayoutData":{}}}', 'StandardLibrariesElementsDiagramMigrationParticipant', '2025.8.0-202506301700', '2025-05-07 09:20:18.967703+00', '2025-08-06 14:54:51.840414+00'); +INSERT INTO public.representation_content (id, content, last_migration_performed, migration_version, created_on, last_modified_on, semantic_data_id, representation_metadata_id) VALUES ('c63c344c-0908-43d1-b79b-0ce6871b81be#6b59ec09-86ca-4155-a315-ebc4209a80b8', '{"id":"6b59ec09-86ca-4155-a315-ebc4209a80b8","kind":"siriusComponents://representation?type=Diagram","targetObjectId":"2b844dea-da40-40c9-ae3a-4ece6024fe2d","descriptionId":"siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089","nodes":[{"id":"6ecd5ce8-cf92-36f4-98d5-81f63382a27e","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"2fdb4a35-2001-3390-ba22-6ab1a7506457","text":"«action»\naction2","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","type":"node:image","targetObjectId":"8828028c-debc-4f23-979d-92aad67f6bc1","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"5b36fc34-39a4-3f21-9a6d-67ecfcbbb475","text":"item2In","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"imageURL":"/images/feature_in.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"bb06c37a-6235-3b64-93e5-bf9018e5ac95","type":"node:image","targetObjectId":"9d4cd5b1-96f8-44fd-ba56-54434f957403","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"9076832c-9b33-391f-b6fc-603fefe75e66","text":"item2Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"bd014c7a-2313-372b-afe1-5ae5835a80b2","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"c6e6ae09-5fac-36b4-a0da-1ead9257865d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ddcef854-1411-3d61-956e-3b96e485c60e","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6b73f453-da63-357f-84aa-8f78070025bf","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"5689f8ea-b002-3dc7-954d-29dcfaf6e2f1","text":"parameters","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"986a428e-5363-3c58-917f-2e20ad8f160f","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d93c3131-6432-3596-a7d5-ec503801a6c4","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"cb903560-4358-3960-b640-04556c9a1905","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"e41586f5-2e6a-321b-b8be-f4b38d3af6e3","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372","type":"node:icon-label","targetObjectId":"8828028c-debc-4f23-979d-92aad67f6bc1","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"55313f71-eb5f-352c-8953-55d3b7619a3d","text":"in item2In","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageIn.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"38e689f7-7c47-3ac5-9b97-0d5be26aa665","type":"node:icon-label","targetObjectId":"9d4cd5b1-96f8-44fd-ba56-54434f957403","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item2Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"770da26b-6242-3906-bdb6-2314d3f6e683","text":"out item2Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c1a42196-541a-366c-8316-d781831b95bc","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"89a6a30f-a466-31d4-b3f3-006ba566ab67","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"656e88a8-d315-327e-98c1-4a28a766bf7b","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"e8790876-1c9c-38ed-9aa8-e0be4db86197","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"d9f92779-1020-3d79-8171-343d0ec6918c","type":"node:rectangle","targetObjectId":"ab0ebe23-4e1d-4239-98e0-6673844c7618","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"acc1eb5b-1b7f-3ea9-9aba-745131468194","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"8996c5aa-00f3-3812-a60b-bdf8cd472320","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6a047222-1fc1-3840-a6ee-2c8ccbaf45ff","text":"«action»\naction3","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"87610918-cc3c-32f3-b9e9-2c8fec982688","type":"node:image","targetObjectId":"b88f87ce-d50b-4093-9d69-d016558f694f","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"07872f72-9547-3290-855a-26f90ebb217f","text":"item3In","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"imageURL":"/images/feature_in.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"66aa0a1d-2d8a-320a-80c4-38a2621d64ca","type":"node:image","targetObjectId":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"2bbe4115-4e7e-39e6-943a-56202442aa34","text":"item3Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"c2752e63-badd-3d62-8ece-22c726509bfc","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4664dcc0-29f8-3f2c-ba28-04dc6cb3bcc6","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5462133c-5def-3d13-92e2-da12d6ee41fc","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6b73f453-da63-357f-84aa-8f78070025bf","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"cda46f4c-7ce7-30e0-8696-df06061f7546","text":"parameters","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"371d454f-cb12-3702-9ced-3d182b0f4314","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"be540e9b-2987-377c-be91-07d18c752cfc","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"7efc5832-1ad4-3447-8902-c60732933ce6","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"d5086016-2981-3d70-8b07-d748c5a4e7d7","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"e085cc24-4786-37f2-9de8-c1964888bf40","type":"node:icon-label","targetObjectId":"b88f87ce-d50b-4093-9d69-d016558f694f","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3In","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"750307ba-7b03-38b3-9769-add658d545e7","text":"in item3In","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageIn.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"caaec618-c81f-3ef6-b03e-b1c6b9a50210","type":"node:icon-label","targetObjectId":"9b0cbdce-3f95-465f-a8d1-cb3314b271dc","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item3Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"2c19d2fa-cbd3-3411-90d0-9de3429f1809","text":"out item3Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"dbcedfce-360b-3987-a6b2-19d37f8ebbee","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"5323fa7b-6836-3271-9902-d6c7751e7720","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"b6aef3f8-4b14-3eb5-9136-89be1d1159e2","type":"node:rectangle","targetObjectId":"11c2bc9a-2ab5-4b2b-8971-c7b259ddb65e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2e3a642b-5391-38f6-b47e-5d1ce67517b1","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"c9d5c8c3-7019-322c-9184-8c49bf1940fd","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=77cfbd22-c903-3b4e-9792-03871fdfc3d4","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"64bd3aa5-7e7b-3895-bb9b-05ce60a5d721","text":"«action»\naction1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ActionUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25"],"kind":"List"}},"borderNodes":[{"id":"554af08e-3830-33ca-86f2-2f2aa1469585","type":"node:image","targetObjectId":"c957153f-04c2-4a0a-80dd-fe190c51c54b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item1Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=dabea151-493e-3bf8-a83b-fd934b2d976c","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"bff357b3-75db-331f-8589-fd8f12f34dc0","text":"item1Out","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"imageURL":"/images/feature_out.svg","scalingFactor":1,"borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","positionDependentRotation":true,"childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"db58623a-850e-33f8-86aa-32804678bf33","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=1e5ed573-49f7-3cd1-a659-3ccd1c577402","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"21950731-ce7e-3f5d-94a0-3cf26b9e517a","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2f21ad31-3dbd-357d-b187-2fcb65285dd9","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6b73f453-da63-357f-84aa-8f78070025bf","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"09abb150-5965-3457-b5ef-b3a64974f93a","text":"parameters","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"30f60d84-e58c-3b8c-851b-6ec99ecc98c1","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=786bcac7-23f1-3287-9733-9d453476dd06","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"cc2f859f-fb21-3ee0-9ded-b42d4aabccd8","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"7948b5da-cf51-31ab-9a8d-f557f84e2c09","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=5f287f50-8d40-387f-a261-42f62d0fc29f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"4b73b4e3-6f9e-34a7-991a-b180f9236946","text":"items","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"1fec1481-5c46-3807-9110-84821e8697d6","type":"node:icon-label","targetObjectId":"c957153f-04c2-4a0a-80dd-fe190c51c54b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ItemUsage","targetObjectLabel":"item1Out","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=87499c19-ab91-39e9-8ba6-a3963af9e075","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"67f0a0e8-7ca5-313c-bd6b-2919f9aac900","text":"out item1Out","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/ItemUsageOut.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"296f6d23-ce2d-3630-962f-54cd256be0ac","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=513b74fd-f039-3f7b-92ca-4345c730ece8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"8ceecdd8-decb-3422-bd6c-45c8a2004177","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5bf244a9-a090-3e61-9819-13c577289bcc","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bb882f80-cc45-3f6b-8039-17517822bf25","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"12884009-7632-395c-9a3b-867cd15c8061","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4","type":"node:rectangle","targetObjectId":"6055ecc6-b50d-4c8e-83ec-2eba714c27c6","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=ActionUsage","targetObjectLabel":"action1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=2e086be9-2d88-3100-ab3d-6788096a15d2","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1f4d562e-833d-3bdf-a8dc-6e6d15ba39d1","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"edges":[{"id":"08697a19-1d8a-33ba-be01-dc1acafa8ac8","type":"edge:straight","targetObjectId":"36ba39c8-8a64-4555-8dda-d6993178b999","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=FlowUsage","targetObjectLabel":"FlowUsage","descriptionId":"siriusComponents://edgeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=ae78d7f3-ee33-3f50-9749-8c4203f1ca9c","beginLabel":null,"centerLabel":{"id":"71d2d35a-c8c8-3709-b9b8-effa66fa1a20","type":"label:edge-center","text":"","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"customizedStyleProperties":[]},"endLabel":null,"sourceId":"554af08e-3830-33ca-86f2-2f2aa1469585","targetId":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","modifiers":[],"state":"Normal","style":{"size":1,"lineStyle":"Solid","sourceArrow":"None","targetArrow":"InputFillClosedArrow","color":"#000000","edgeType":"Manhattan"},"centerLabelEditable":true,"deletable":true,"customizedStyleProperties":[]}],"layoutData":{"nodeLayoutData":{"1fec1481-5c46-3807-9110-84821e8697d6":{"id":"1fec1481-5c46-3807-9110-84821e8697d6","position":{"x":0.0,"y":28.5},"size":{"width":192.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd":{"id":"c2e2be95-3ea9-3724-a31d-7a6d1f7d46dd","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"caaec618-c81f-3ef6-b03e-b1c6b9a50210":{"id":"caaec618-c81f-3ef6-b03e-b1c6b9a50210","position":{"x":0.0,"y":44.5},"size":{"width":192.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"c1a42196-541a-366c-8316-d781831b95bc":{"id":"c1a42196-541a-366c-8316-d781831b95bc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"db58623a-850e-33f8-86aa-32804678bf33":{"id":"db58623a-850e-33f8-86aa-32804678bf33","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d9f92779-1020-3d79-8171-343d0ec6918c":{"id":"d9f92779-1020-3d79-8171-343d0ec6918c","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"66aa0a1d-2d8a-320a-80c4-38a2621d64ca":{"id":"66aa0a1d-2d8a-320a-80c4-38a2621d64ca","position":{"x":189.0,"y":44.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"5462133c-5def-3d13-92e2-da12d6ee41fc":{"id":"5462133c-5def-3d13-92e2-da12d6ee41fc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372":{"id":"c8d53675-6bfe-3fd8-8dd2-c324a0ab6372","position":{"x":0.0,"y":28.5},"size":{"width":192.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"7efc5832-1ad4-3447-8902-c60732933ce6":{"id":"7efc5832-1ad4-3447-8902-c60732933ce6","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":70.5},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":61.33332824707031,"height":70.5}},"30f60d84-e58c-3b8c-851b-6ec99ecc98c1":{"id":"30f60d84-e58c-3b8c-851b-6ec99ecc98c1","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c9d5c8c3-7019-322c-9184-8c49bf1940fd":{"id":"c9d5c8c3-7019-322c-9184-8c49bf1940fd","position":{"x":229.0,"y":12.0},"size":{"width":194.0,"height":108.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":63.33332824707031,"height":102.5}},"7948b5da-cf51-31ab-9a8d-f557f84e2c09":{"id":"7948b5da-cf51-31ab-9a8d-f557f84e2c09","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":61.33332824707031,"height":54.5}},"b6aef3f8-4b14-3eb5-9136-89be1d1159e2":{"id":"b6aef3f8-4b14-3eb5-9136-89be1d1159e2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"87610918-cc3c-32f3-b9e9-2c8fec982688":{"id":"87610918-cc3c-32f3-b9e9-2c8fec982688","position":{"x":189.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6":{"id":"cf13ec0b-ed3f-3341-8fae-f0bbf74155f6","position":{"x":189.0,"y":0.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":true,"handleLayoutData":[{"edgeId":"08697a19-1d8a-33ba-be01-dc1acafa8ac8","position":{"x":-6.0,"y":5.6188812065922775},"handlePosition":"right","type":"target"}],"minComputedSize":{"width":16.0,"height":16.0}},"554af08e-3830-33ca-86f2-2f2aa1469585":{"id":"554af08e-3830-33ca-86f2-2f2aa1469585","position":{"x":189.0,"y":22.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":true,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"bb06c37a-6235-3b64-93e5-bf9018e5ac95":{"id":"bb06c37a-6235-3b64-93e5-bf9018e5ac95","position":{"x":189.0,"y":44.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"986a428e-5363-3c58-917f-2e20ad8f160f":{"id":"986a428e-5363-3c58-917f-2e20ad8f160f","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"bd014c7a-2313-372b-afe1-5ae5835a80b2":{"id":"bd014c7a-2313-372b-afe1-5ae5835a80b2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2f21ad31-3dbd-357d-b187-2fcb65285dd9":{"id":"2f21ad31-3dbd-357d-b187-2fcb65285dd9","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"8996c5aa-00f3-3812-a60b-bdf8cd472320":{"id":"8996c5aa-00f3-3812-a60b-bdf8cd472320","position":{"x":224.0,"y":-171.2248995983936},"size":{"width":194.0,"height":118.5},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":63.33332824707031,"height":118.5}},"296f6d23-ce2d-3630-962f-54cd256be0ac":{"id":"296f6d23-ce2d-3630-962f-54cd256be0ac","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"e085cc24-4786-37f2-9de8-c1964888bf40":{"id":"e085cc24-4786-37f2-9de8-c1964888bf40","position":{"x":0.0,"y":28.5},"size":{"width":192.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"6ecd5ce8-cf92-36f4-98d5-81f63382a27e":{"id":"6ecd5ce8-cf92-36f4-98d5-81f63382a27e","position":{"x":229.0,"y":203.0},"size":{"width":194.0,"height":118.5},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":63.33332824707031,"height":118.5}},"656e88a8-d315-327e-98c1-4a28a766bf7b":{"id":"656e88a8-d315-327e-98c1-4a28a766bf7b","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5bf244a9-a090-3e61-9819-13c577289bcc":{"id":"5bf244a9-a090-3e61-9819-13c577289bcc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"371d454f-cb12-3702-9ced-3d182b0f4314":{"id":"371d454f-cb12-3702-9ced-3d182b0f4314","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"38e689f7-7c47-3ac5-9b97-0d5be26aa665":{"id":"38e689f7-7c47-3ac5-9b97-0d5be26aa665","position":{"x":0.0,"y":44.5},"size":{"width":192.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"ddcef854-1411-3d61-956e-3b96e485c60e":{"id":"ddcef854-1411-3d61-956e-3b96e485c60e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c2752e63-badd-3d62-8ece-22c726509bfc":{"id":"c2752e63-badd-3d62-8ece-22c726509bfc","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"cb903560-4358-3960-b640-04556c9a1905":{"id":"cb903560-4358-3960-b640-04556c9a1905","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":70.5},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":61.33332824707031,"height":70.5}},"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4":{"id":"f4c5c490-5510-3c7b-bfdb-0a0df1ed46a4","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95":{"id":"5d03a2d7-40f9-3f3b-b165-d14e5acdfa95","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}}},"edgeLayoutData":{"08697a19-1d8a-33ba-be01-dc1acafa8ac8":{"id":"08697a19-1d8a-33ba-be01-dc1acafa8ac8","bendingPoints":[],"edgeAnchorLayoutData":[]}},"labelLayoutData":{"9076832c-9b33-391f-b6fc-603fefe75e66":{"id":"9076832c-9b33-391f-b6fc-603fefe75e66","position":{"x":34.866668701171875,"y":-14.25},"size":{"width":49.73333740234375,"height":12.5},"resizedByUser":false,"movedByUser":false},"5b36fc34-39a4-3f21-9a6d-67ecfcbbb475":{"id":"5b36fc34-39a4-3f21-9a6d-67ecfcbbb475","position":{"x":28.133331298828125,"y":-30.5},"size":{"width":40.26666259765625,"height":12.5},"resizedByUser":false,"movedByUser":false},"71d2d35a-c8c8-3709-b9b8-effa66fa1a20":{"id":"71d2d35a-c8c8-3709-b9b8-effa66fa1a20","position":{"x":0.0,"y":0.0},"size":{"width":0.0,"height":0.0},"resizedByUser":false,"movedByUser":false},"bff357b3-75db-331f-8589-fd8f12f34dc0":{"id":"bff357b3-75db-331f-8589-fd8f12f34dc0","position":{"x":34.866668701171875,"y":-28.5},"size":{"width":49.73333740234375,"height":12.5},"resizedByUser":false,"movedByUser":false},"07872f72-9547-3290-855a-26f90ebb217f":{"id":"07872f72-9547-3290-855a-26f90ebb217f","position":{"x":30.133331298828125,"y":-14.25},"size":{"width":40.26666259765625,"height":12.5},"resizedByUser":false,"movedByUser":false},"2bbe4115-4e7e-39e6-943a-56202442aa34":{"id":"2bbe4115-4e7e-39e6-943a-56202442aa34","position":{"x":34.866668701171875,"y":-14.25},"size":{"width":49.73333740234375,"height":12.5},"resizedByUser":false,"movedByUser":false}}}}', 'DiagramMinComputedSizeMigrationParticipant', '2025.12.0-202511141745', '2025-05-07 09:20:18.967703+00', '2026-02-20 14:43:58.414532+00', 'c63c344c-0908-43d1-b79b-0ce6871b81be', '6b59ec09-86ca-4155-a315-ebc4209a80b8'); -- @@ -98,3 +99,4 @@ INSERT INTO public.semantic_data_domain (semantic_data_id, uri) VALUES ('c63c344 -- PostgreSQL database dump complete -- + diff --git a/backend/application/syson-application/src/test/resources/scripts/database-content/InterconnectionView-FlowConnectionTest.sql b/backend/application/syson-application/src/test/resources/scripts/database-content/InterconnectionView-FlowConnectionTest.sql index a01169d17..c408ca6ad 100644 --- a/backend/application/syson-application/src/test/resources/scripts/database-content/InterconnectionView-FlowConnectionTest.sql +++ b/backend/application/syson-application/src/test/resources/scripts/database-content/InterconnectionView-FlowConnectionTest.sql @@ -2,8 +2,8 @@ -- PostgreSQL database dump -- --- Dumped from database version 17.5 (Debian 17.5-1.pgdg120+1) --- Dumped by pg_dump version 18.1 +-- Dumped from database version 15.15 (Debian 15.15-1.pgdg13+1) +-- Dumped by pg_dump version 18.2 SET statement_timeout = 0; SET lock_timeout = 0; @@ -19,14 +19,14 @@ SET row_security = off; -- Data for Name: semantic_data; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.semantic_data (id, created_on, last_modified_on) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572', '2025-03-28 10:15:12.495244+00', '2025-08-13 09:08:13.996854+00'); +INSERT INTO public.semantic_data (id, created_on, last_modified_on) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572', '2025-03-28 10:15:12.495244+00', '2026-02-20 13:36:19.346157+00'); -- -- Data for Name: document; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.document (id, semantic_data_id, name, content, created_on, last_modified_on, is_read_only) VALUES ('75404253-6ad1-454d-a04e-025e95804139', '2e9d176e-8243-4033-8b4a-2b14ec5a8572', 'SysMLv2.sysml', '{"json":{"version":"1.0","encoding":"utf-8"},"ns":{"sysml":"http://www.eclipse.org/syson/sysml"},"migration":{"lastMigrationPerformed":"OneDiagramDescriptionMigrationParticipant$$SpringCGLIB$$0","migrationVersion":"2025.8.0-202508220000"},"content":[{"id":"a2d1da61-af8f-4ec0-a233-9f07519eb825","eClass":"sysml:Namespace","data":{"elementId":"71d5211e-7478-4066-b017-e1de658fe25b","ownedRelationship":[{"id":"9bee588b-b130-460c-8b19-e18830c03e77","eClass":"sysml:OwningMembership","data":{"elementId":"4ee43df8-7446-4c5e-b49b-1cfd779a4fd8","ownedRelatedElement":[{"id":"1901f3c5-c4b5-49eb-9d77-8f3e898ea81c","eClass":"sysml:Package","data":{"declaredName":"Package 1","elementId":"b9be85a0-7810-41a8-a662-dadd19558ab8","ownedRelationship":[{"id":"f5cd5329-c581-41ab-a884-dc6b8d1c0339","eClass":"sysml:OwningMembership","data":{"elementId":"35825804-8260-45b3-8e5a-dd8d2256f928","ownedRelatedElement":[{"id":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","eClass":"sysml:PartUsage","data":{"declaredName":"part1","elementId":"1e22938a-1d95-4528-869b-b51c8b6d6061","ownedRelationship":[{"id":"6214ff4c-2919-4f2b-a340-7927bc07f5f1","eClass":"sysml:FeatureMembership","data":{"elementId":"c7d12ef7-1deb-4bb8-8536-8e63a61c99cd","ownedRelatedElement":[{"id":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","eClass":"sysml:PartUsage","data":{"declaredName":"part1","elementId":"aa39c75f-888e-45a0-b297-6d53dabfa06f","ownedRelationship":[{"id":"1dc15df1-60ae-4239-9732-e9daf1dd3d3c","eClass":"sysml:FeatureMembership","data":{"elementId":"c325e788-8c2d-4be1-b272-a5ab0ebfa253","ownedRelatedElement":[{"id":"f8f30460-3264-4536-a3fb-34cba73b626d","eClass":"sysml:PortUsage","data":{"declaredName":"port1","elementId":"55998a05-dac1-490b-9e06-ab6673b59149","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"4298723c-1e8a-45a7-b09f-3d8fe5b00706","eClass":"sysml:FeatureMembership","data":{"elementId":"5d2ccc2b-2ee7-4417-a5c0-e12903d751e0","ownedRelatedElement":[{"id":"f8d34ea9-31cd-446d-965b-7f36016c912a","eClass":"sysml:PartUsage","data":{"declaredName":"part2","elementId":"6e896e75-1fe2-409a-80a8-7b73c5fec85b","ownedRelationship":[{"id":"d367acf8-a258-4f0b-92a7-0926780ef4a2","eClass":"sysml:FeatureMembership","data":{"elementId":"8fd1b4d9-8f39-4196-b9e9-1c368c76cc06","ownedRelatedElement":[{"id":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","eClass":"sysml:PortUsage","data":{"declaredName":"port2","elementId":"b1c52a1f-e626-4eab-a3b1-24a7b858d5fe","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"9d592d99-37c0-44f7-9262-9d82966230a3","eClass":"sysml:FeatureMembership","data":{"elementId":"ade1a49a-6f1b-45de-948e-6d4c387aea35","ownedRelatedElement":[{"id":"cc534549-70f3-49ff-b41b-35926aa89032","eClass":"sysml:PartUsage","data":{"declaredName":"part3","elementId":"842fd257-863f-477f-ace6-68a630ce3030","ownedRelationship":[{"id":"232c9a5a-fe1e-44cd-8586-d33d52d276c0","eClass":"sysml:FeatureMembership","data":{"elementId":"60e68fe3-b2e0-4018-add7-485397c216db","ownedRelatedElement":[{"id":"b834ce60-5364-4ff9-850f-db3a88c73c06","eClass":"sysml:PortUsage","data":{"declaredName":"port3","elementId":"67b2480c-d06f-42a7-a1bc-a2f5ac08e669","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"e6e301fb-db1b-42bc-a828-f11e4429b1c5","eClass":"sysml:FeatureMembership","data":{"elementId":"e4dc179f-9ae3-4b33-8c20-96f117980ff0","ownedRelatedElement":[{"id":"64f8adfd-dbb2-4500-9483-31c9765658d0","eClass":"sysml:ViewUsage","data":{"declaredName":"Interconnection View","elementId":"bf017177-0dd7-4209-a055-60ff137d2335","ownedRelationship":[{"id":"3cea91e2-e044-4c14-82c4-407f2d434f9a","eClass":"sysml:FeatureTyping","data":{"elementId":"f3922062-dd67-45ec-80c2-66dbcca1b625","type":"sysml:ViewDefinition sysmllibrary:///faf517ae-dbcd-30a4-b3b9-3d9cb3bbf5c1#6518462a-2f51-5276-b95e-69ee5193db38","typedFeature":"64f8adfd-dbb2-4500-9483-31c9765658d0"}},{"id":"e75f7f89-bbb5-4d2c-b78d-89836991248b","eClass":"sysml:MembershipExpose","data":{"elementId":"758470a7-9d3b-42eb-8dff-d1d366be76a8","importedMembership":"f5cd5329-c581-41ab-a884-dc6b8d1c0339"}},{"id":"58302969-3036-4798-89e7-6fbad8aa85ca","eClass":"sysml:MembershipExpose","data":{"elementId":"1900ab3f-aa95-4e3c-ac92-9d4f7fd29894","importedMembership":"6214ff4c-2919-4f2b-a340-7927bc07f5f1"}},{"id":"5eda8bac-9cb8-4103-8f07-d41be51210db","eClass":"sysml:MembershipExpose","data":{"elementId":"6bf0254e-7733-42a4-96e8-33b50596b488","importedMembership":"4298723c-1e8a-45a7-b09f-3d8fe5b00706"}},{"id":"cf005d03-e897-43a1-8f1f-2a0bcb21bbab","eClass":"sysml:MembershipExpose","data":{"elementId":"d0e1bf13-6b88-40ec-94c6-2089369032c4","importedMembership":"9d592d99-37c0-44f7-9262-9d82966230a3"}}]}}]}}],"isComposite":true}}]}},{"id":"217fd83c-baa4-41e8-96d8-82732b45edd2","eClass":"sysml:FeatureMembership","data":{"elementId":"954fafed-a9fd-40cb-8174-615242fced00"}},{"id":"528f3d2e-16d6-4727-a2a3-54f563a12f2b","eClass":"sysml:FeatureMembership","data":{"elementId":"d7f0c800-ea37-4b20-b873-8a11a84a1e7b"}},{"id":"4a049397-30bf-4ad0-96a1-df91a17f3cb8","eClass":"sysml:OwningMembership","data":{"elementId":"a4ac376a-2df1-436e-9a70-c986e10fbfef","ownedRelatedElement":[{"id":"4c289c86-b476-4580-956a-f2e5ea0a0b5f","eClass":"sysml:FlowUsage","data":{"elementId":"be613950-7b65-4901-ab54-fac8200fccb1","ownedRelationship":[{"id":"22fc8e68-a432-4d74-b24a-745871e1ce87","eClass":"sysml:EndFeatureMembership","data":{"elementId":"ef545dbd-099a-4a17-93ee-8879fb284caf","ownedRelatedElement":[{"id":"be477fb1-08ce-4f56-bb0d-adc6896f5b91","eClass":"sysml:FlowEnd","data":{"elementId":"2a2d10f0-5428-4999-827c-71a5e3286fd4","ownedRelationship":[{"id":"36bc7093-246c-420d-b3f6-0a4c50da6256","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"2e121c53-4ce1-42fd-85ec-e1e088a76280","referencedFeature":"f431b2c3-3854-4239-a93b-97ef8be9fc4e"}},{"id":"4d35775d-0a74-4ac2-901c-24f1c70e370e","eClass":"sysml:EndFeatureMembership","data":{"elementId":"ed2b5a48-7707-4611-b581-e3abc8c9aa87","ownedRelatedElement":[{"id":"0cfda3ae-2a03-41fb-a4a3-facbf32b5b7e","eClass":"sysml:ReferenceUsage","data":{"elementId":"b2d2f734-17c4-4143-a4e0-75f7897f3ced","ownedRelationship":[{"id":"ffcaaca7-7148-4f90-b282-1a29f8619f28","eClass":"sysml:Redefinition","data":{"elementId":"ca390028-4482-492a-a9c4-73cdf241701b","redefinedFeature":"f8f30460-3264-4536-a3fb-34cba73b626d","redefiningFeature":"0cfda3ae-2a03-41fb-a4a3-facbf32b5b7e"}}]}}]}}]}}]}},{"id":"1eb1133a-e743-4feb-9c96-c1b2da88d348","eClass":"sysml:EndFeatureMembership","data":{"elementId":"d3153eda-0671-49e9-9d35-b402d688f068","ownedRelatedElement":[{"id":"9d182098-8cad-43b8-b559-1306c49766ea","eClass":"sysml:FlowEnd","data":{"elementId":"8e50ff54-5cf7-45a8-972d-bd2794160d79","ownedRelationship":[{"id":"0b897c49-f1a1-4442-ba23-89db56cbd199","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"2a06b89a-45f9-4d36-802a-5154ad210ca9","referencedFeature":"f8d34ea9-31cd-446d-965b-7f36016c912a"}},{"id":"847ba780-23d4-4b93-bc95-1928684c36bc","eClass":"sysml:EndFeatureMembership","data":{"elementId":"3787540f-df5d-4733-a870-6df65b5a23f6","ownedRelatedElement":[{"id":"251f6144-f426-44d3-a645-f832b1fef0e0","eClass":"sysml:ReferenceUsage","data":{"elementId":"5b0a6f8f-3dcc-4f67-8a98-28c49bf7d517","ownedRelationship":[{"id":"29d208e5-cd92-4038-9dde-c119b41fe56f","eClass":"sysml:Redefinition","data":{"elementId":"728d0ae2-def2-43d5-abc6-570c419cdd42","redefinedFeature":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","redefiningFeature":"251f6144-f426-44d3-a645-f832b1fef0e0"}}]}}]}}]}}]}}]}}]}}]}}]}}]}}]}', '2025-08-13 09:08:13.996846+00', '2025-08-13 09:08:13.996846+00', false); +INSERT INTO public.document (id, semantic_data_id, name, content, created_on, last_modified_on, is_read_only) VALUES ('75404253-6ad1-454d-a04e-025e95804139', '2e9d176e-8243-4033-8b4a-2b14ec5a8572', 'SysMLv2.sysml', '{"json":{"version":"1.0","encoding":"utf-8"},"ns":{"sysml":"http://www.eclipse.org/syson/sysml"},"migration":{"lastMigrationPerformed":"DiagramToolbarMigrationParticipant","migrationVersion":"2026.3.0-202602171555"},"content":[{"id":"a2d1da61-af8f-4ec0-a233-9f07519eb825","eClass":"sysml:Namespace","data":{"elementId":"71d5211e-7478-4066-b017-e1de658fe25b","ownedRelationship":[{"id":"9bee588b-b130-460c-8b19-e18830c03e77","eClass":"sysml:OwningMembership","data":{"elementId":"4ee43df8-7446-4c5e-b49b-1cfd779a4fd8","ownedRelatedElement":[{"id":"1901f3c5-c4b5-49eb-9d77-8f3e898ea81c","eClass":"sysml:Package","data":{"declaredName":"Package 1","elementId":"b9be85a0-7810-41a8-a662-dadd19558ab8","ownedRelationship":[{"id":"f5cd5329-c581-41ab-a884-dc6b8d1c0339","eClass":"sysml:OwningMembership","data":{"elementId":"35825804-8260-45b3-8e5a-dd8d2256f928","ownedRelatedElement":[{"id":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","eClass":"sysml:PartUsage","data":{"declaredName":"part1","elementId":"1e22938a-1d95-4528-869b-b51c8b6d6061","ownedRelationship":[{"id":"6214ff4c-2919-4f2b-a340-7927bc07f5f1","eClass":"sysml:FeatureMembership","data":{"elementId":"c7d12ef7-1deb-4bb8-8536-8e63a61c99cd","ownedRelatedElement":[{"id":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","eClass":"sysml:PartUsage","data":{"declaredName":"part1","elementId":"aa39c75f-888e-45a0-b297-6d53dabfa06f","ownedRelationship":[{"id":"1dc15df1-60ae-4239-9732-e9daf1dd3d3c","eClass":"sysml:FeatureMembership","data":{"elementId":"c325e788-8c2d-4be1-b272-a5ab0ebfa253","ownedRelatedElement":[{"id":"f8f30460-3264-4536-a3fb-34cba73b626d","eClass":"sysml:PortUsage","data":{"declaredName":"port1","elementId":"55998a05-dac1-490b-9e06-ab6673b59149","ownedRelationship":[{"id":"ca6c953a-3ed4-4339-b1a8-dbf61f77352f","eClass":"sysml:FeatureMembership","data":{"elementId":"f910ccd5-d83e-496f-96af-d093eb07f6fc","ownedRelatedElement":[{"id":"f4d01c14-9d9c-4889-933c-775533a34980","eClass":"sysml:ReferenceUsage","data":{"declaredName":"reference1","elementId":"330656f1-4106-43ad-81c6-14f0416a69c3"}}]}}],"isComposite":true}}]}}],"isComposite":true}}]}},{"id":"4298723c-1e8a-45a7-b09f-3d8fe5b00706","eClass":"sysml:FeatureMembership","data":{"elementId":"5d2ccc2b-2ee7-4417-a5c0-e12903d751e0","ownedRelatedElement":[{"id":"f8d34ea9-31cd-446d-965b-7f36016c912a","eClass":"sysml:PartUsage","data":{"declaredName":"part2","elementId":"6e896e75-1fe2-409a-80a8-7b73c5fec85b","ownedRelationship":[{"id":"d367acf8-a258-4f0b-92a7-0926780ef4a2","eClass":"sysml:FeatureMembership","data":{"elementId":"8fd1b4d9-8f39-4196-b9e9-1c368c76cc06","ownedRelatedElement":[{"id":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","eClass":"sysml:PortUsage","data":{"declaredName":"port2","elementId":"b1c52a1f-e626-4eab-a3b1-24a7b858d5fe","ownedRelationship":[{"id":"f05b2012-ae45-4ffe-9cfc-6634690ece0a","eClass":"sysml:FeatureMembership","data":{"elementId":"b8638a1e-da9e-465a-af5b-fed882cb0f81","ownedRelatedElement":[{"id":"0ba16fc3-2bc0-489f-8247-bd2ff22a3626","eClass":"sysml:ReferenceUsage","data":{"declaredName":"reference1","elementId":"84ad7f10-6733-464f-8b5e-e9578e9a0389"}}]}}],"isComposite":true}}]}}],"isComposite":true}}]}},{"id":"9d592d99-37c0-44f7-9262-9d82966230a3","eClass":"sysml:FeatureMembership","data":{"elementId":"ade1a49a-6f1b-45de-948e-6d4c387aea35","ownedRelatedElement":[{"id":"cc534549-70f3-49ff-b41b-35926aa89032","eClass":"sysml:PartUsage","data":{"declaredName":"part3","elementId":"842fd257-863f-477f-ace6-68a630ce3030","ownedRelationship":[{"id":"232c9a5a-fe1e-44cd-8586-d33d52d276c0","eClass":"sysml:FeatureMembership","data":{"elementId":"60e68fe3-b2e0-4018-add7-485397c216db","ownedRelatedElement":[{"id":"b834ce60-5364-4ff9-850f-db3a88c73c06","eClass":"sysml:PortUsage","data":{"declaredName":"port3","elementId":"67b2480c-d06f-42a7-a1bc-a2f5ac08e669","isComposite":true}}]}}],"isComposite":true}}]}},{"id":"e6e301fb-db1b-42bc-a828-f11e4429b1c5","eClass":"sysml:FeatureMembership","data":{"elementId":"e4dc179f-9ae3-4b33-8c20-96f117980ff0","ownedRelatedElement":[{"id":"64f8adfd-dbb2-4500-9483-31c9765658d0","eClass":"sysml:ViewUsage","data":{"declaredName":"Interconnection View","elementId":"bf017177-0dd7-4209-a055-60ff137d2335","ownedRelationship":[{"id":"3cea91e2-e044-4c14-82c4-407f2d434f9a","eClass":"sysml:FeatureTyping","data":{"elementId":"f3922062-dd67-45ec-80c2-66dbcca1b625","type":"sysml:ViewDefinition sysmllibrary:///faf517ae-dbcd-30a4-b3b9-3d9cb3bbf5c1#6518462a-2f51-5276-b95e-69ee5193db38","typedFeature":"64f8adfd-dbb2-4500-9483-31c9765658d0"}},{"id":"e75f7f89-bbb5-4d2c-b78d-89836991248b","eClass":"sysml:MembershipExpose","data":{"elementId":"758470a7-9d3b-42eb-8dff-d1d366be76a8","importedMembership":"f5cd5329-c581-41ab-a884-dc6b8d1c0339"}},{"id":"58302969-3036-4798-89e7-6fbad8aa85ca","eClass":"sysml:MembershipExpose","data":{"elementId":"1900ab3f-aa95-4e3c-ac92-9d4f7fd29894","importedMembership":"6214ff4c-2919-4f2b-a340-7927bc07f5f1"}},{"id":"5eda8bac-9cb8-4103-8f07-d41be51210db","eClass":"sysml:MembershipExpose","data":{"elementId":"6bf0254e-7733-42a4-96e8-33b50596b488","importedMembership":"4298723c-1e8a-45a7-b09f-3d8fe5b00706"}},{"id":"cf005d03-e897-43a1-8f1f-2a0bcb21bbab","eClass":"sysml:MembershipExpose","data":{"elementId":"d0e1bf13-6b88-40ec-94c6-2089369032c4","importedMembership":"9d592d99-37c0-44f7-9262-9d82966230a3"}}]}}]}},{"id":"0e8472a8-5d2a-425f-9970-6fb0bb044a35","eClass":"sysml:FeatureMembership","data":{"elementId":"5294c911-d6d9-4479-80bd-5c19dc5c038d","ownedRelatedElement":[{"id":"f51cadc9-2ad7-406d-9c07-d51cd6f241f1","eClass":"sysml:FlowUsage","data":{"elementId":"95b8c87f-62dd-4288-afc3-02376a77752e","ownedRelationship":[{"id":"6d56025a-c1d5-4ef1-88e3-322c1601a106","eClass":"sysml:EndFeatureMembership","data":{"elementId":"a491758a-565e-4ba2-8e2b-70d14e555926","ownedRelatedElement":[{"id":"c0571157-8f1f-4e99-a7c4-1c9097f2b367","eClass":"sysml:FlowEnd","data":{"elementId":"b2a7e3ff-ff7a-41bc-b995-9df1a034b9a6","ownedRelationship":[{"id":"91d04add-6f13-4008-9130-301286846898","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"8855f0dd-6585-4466-9ea3-1c1f28310df3","ownedRelatedElement":[{"id":"63e0ab4b-c9ec-451c-a876-08253fae59a1","eClass":"sysml:Feature","data":{"elementId":"e3514422-6538-425d-ae7e-cb5f8ff2df11","ownedRelationship":[{"id":"f4a46464-39c5-4554-97a8-b2c835154ad3","eClass":"sysml:FeatureChaining","data":{"elementId":"bdcdf70d-092a-410d-9699-0e24b4289ddd","chainingFeature":"f431b2c3-3854-4239-a93b-97ef8be9fc4e"}},{"id":"f7187869-6f4d-44a3-96bc-27857de6dfe0","eClass":"sysml:FeatureChaining","data":{"elementId":"8ce2e434-0347-450f-809a-820abac25402","chainingFeature":"f8f30460-3264-4536-a3fb-34cba73b626d"}}]}}],"referencedFeature":"63e0ab4b-c9ec-451c-a876-08253fae59a1"}},{"id":"d12d0938-27c8-4fbc-afbd-81451beff501","eClass":"sysml:FeatureMembership","data":{"elementId":"d30a7b42-d211-4a59-b50a-b890c617d07c","ownedRelatedElement":[{"id":"c4958c15-f1a9-44b0-bb3e-92eb22f8039a","eClass":"sysml:ReferenceUsage","data":{"elementId":"0cfbc3ae-189f-4278-90c1-fc927cafd086","ownedRelationship":[{"id":"11212505-e663-4bae-8afa-65a713974add","eClass":"sysml:Redefinition","data":{"elementId":"2cf87cde-888d-489a-9d04-8944e28753bd","redefinedFeature":"f8f30460-3264-4536-a3fb-34cba73b626d","redefiningFeature":"f51cadc9-2ad7-406d-9c07-d51cd6f241f1"}}]}}]}}],"isEnd":true}}]}},{"id":"24b3d5ce-a4d2-4c57-ac0a-55ceeb766248","eClass":"sysml:EndFeatureMembership","data":{"elementId":"6f73e493-a060-4309-9fc0-0a5a265d63d4","ownedRelatedElement":[{"id":"f0c0b6cb-1d60-4d42-87ba-200d20b7f256","eClass":"sysml:FlowEnd","data":{"elementId":"3277a169-3c12-49b9-b284-457e153f0f31","ownedRelationship":[{"id":"fdccd613-4b91-43e6-929f-3c1751f5e9a8","eClass":"sysml:ReferenceSubsetting","data":{"elementId":"676c00b1-8a85-4e54-a67f-234cd709e584","ownedRelatedElement":[{"id":"68e1a9dc-6b89-40bd-bb6a-39f5e9f57789","eClass":"sysml:Feature","data":{"elementId":"fd764756-e69d-4365-8d41-f8da37bcbdec","ownedRelationship":[{"id":"faa19d28-465b-4241-b0bd-7db9b2167972","eClass":"sysml:FeatureChaining","data":{"elementId":"de6a99d4-6008-47f2-9311-2eb3df7281d0","chainingFeature":"f8d34ea9-31cd-446d-965b-7f36016c912a"}},{"id":"895fed58-0376-468a-bed5-5aa28c83e0fb","eClass":"sysml:FeatureChaining","data":{"elementId":"e3a05cc0-43be-4f96-8bef-71e948fbb9b7","chainingFeature":"a2f9dfac-4206-4b49-8ea4-20653215a5bb"}}]}}],"referencedFeature":"68e1a9dc-6b89-40bd-bb6a-39f5e9f57789"}},{"id":"62125fd8-555a-4802-9ad6-ae81cb8215f3","eClass":"sysml:FeatureMembership","data":{"elementId":"06a3ffd3-a930-4c44-97b8-813ed48f38dd","ownedRelatedElement":[{"id":"569dfff6-8192-4be4-9777-fd5422de5b0e","eClass":"sysml:ReferenceUsage","data":{"elementId":"b9de396a-111d-4bd4-9490-00020fae344d","ownedRelationship":[{"id":"72dfa871-0b75-460a-b57e-4619fe5d5f06","eClass":"sysml:Redefinition","data":{"elementId":"980da335-bb96-4666-aedd-d90d24275ef7","redefinedFeature":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","redefiningFeature":"f51cadc9-2ad7-406d-9c07-d51cd6f241f1"}}]}}]}}],"isEnd":true}}]}}]}}]}}],"isComposite":true}}]}},{"id":"217fd83c-baa4-41e8-96d8-82732b45edd2","eClass":"sysml:FeatureMembership","data":{"elementId":"954fafed-a9fd-40cb-8174-615242fced00"}},{"id":"528f3d2e-16d6-4727-a2a3-54f563a12f2b","eClass":"sysml:FeatureMembership","data":{"elementId":"d7f0c800-ea37-4b20-b873-8a11a84a1e7b"}}]}}]}}]}}]}', '2026-02-20 13:36:19.346151+00', '2026-02-20 13:36:19.346151+00', false); -- @@ -71,14 +71,14 @@ INSERT INTO public.project_semantic_data (id, project_id, semantic_data_id, name -- Data for Name: representation_metadata; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.representation_metadata (id, representation_metadata_id, target_object_id, description_id, label, kind, created_on, last_modified_on, documentation, semantic_data_id) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572#f3d8af1e-d0da-4c6c-ad36-7292caa02335', 'f3d8af1e-d0da-4c6c-ad36-7292caa02335', '64f8adfd-dbb2-4500-9483-31c9765658d0', 'siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089', 'Interconnection View', 'siriusComponents://representation?type=Diagram', '2025-05-12 09:04:18.785044+00', '2025-08-13 09:07:52.980484+00', '', '2e9d176e-8243-4033-8b4a-2b14ec5a8572'); +INSERT INTO public.representation_metadata (id, target_object_id, description_id, label, kind, created_on, last_modified_on, documentation, semantic_data_id, representation_metadata_id) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572#f3d8af1e-d0da-4c6c-ad36-7292caa02335', '64f8adfd-dbb2-4500-9483-31c9765658d0', 'siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089', 'Interconnection View', 'siriusComponents://representation?type=Diagram', '2025-05-12 09:04:18.785044+00', '2025-08-13 09:07:52.980484+00', '', '2e9d176e-8243-4033-8b4a-2b14ec5a8572', 'f3d8af1e-d0da-4c6c-ad36-7292caa02335'); -- -- Data for Name: representation_content; Type: TABLE DATA; Schema: public; Owner: dbuser -- -INSERT INTO public.representation_content (id, representation_metadata_id, semantic_data_id, content, last_migration_performed, migration_version, created_on, last_modified_on) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572#f3d8af1e-d0da-4c6c-ad36-7292caa02335', 'f3d8af1e-d0da-4c6c-ad36-7292caa02335', '2e9d176e-8243-4033-8b4a-2b14ec5a8572', '{"id":"f3d8af1e-d0da-4c6c-ad36-7292caa02335","kind":"siriusComponents://representation?type=Diagram","targetObjectId":"64f8adfd-dbb2-4500-9483-31c9765658d0","descriptionId":"siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089","nodes":[{"id":"59a05660-65dd-34c9-84f9-82075f21e48e","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"fc1020e5-2c51-3952-9b3f-8e1cf023edca","text":"«part»\npart1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66"],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"e887fae7-592a-31d3-b4d4-7285ba21dac5","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"fd520a8b-4fe5-3993-a916-6f1934b1c16d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"dd4a182a-c45b-3923-9730-6d0dac13870c","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"0c80aad1-712f-3624-bd36-395731521d10","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"81aec45f-6aad-3b26-ae43-0320f9079017","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"cc9cc9df-96d8-3819-aa50-d192fecfffc6","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"daf9348b-b059-3f64-8d0e-ab0ae82fe917","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"24310152-a7e7-33e0-8172-7226079247cb","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"fb1f891c-283c-39ee-a072-a31d9bb573fa","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"909c04cf-f602-3314-8796-9748dbefa5aa","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f7f5e139-56bb-3118-b2dd-168ca508bc86","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5d4a5e0a-f5e9-3856-99e9-83561fa129f3","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"0f425839-807b-3e83-841b-bf7c04955f80","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2fb0c76a-454d-3468-8189-514fc7055f20","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"113912a6-8d11-31b0-b335-08794ca275f5","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f7df022c-485c-3dfe-ac4c-b2da21be8a1b","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4600a4ff-8908-35b4-bced-daf4aa9a1fcc","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f8a8af5c-e579-319a-8c4a-11d251c07de0","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"c83e5ea6-1653-3281-bc8c-8b501405ee4e","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[{"id":"788aa34d-b3a4-30f7-bdfd-13e0b2032e07","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"0298eae4-fffe-38a6-88e3-90bd30335e9b","text":"«part»\npart2","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66"],"kind":"List"}},"borderNodes":[{"id":"df02cadd-e712-3f19-909c-b54f8093ac1a","type":"node:rectangle","targetObjectId":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"1a444577-cc85-38db-b817-e6e05c55d87a","text":"port2","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"478aaa4f-6f54-33a4-9e3b-f49e4ce03bff","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"b584d097-895b-33a0-b5da-fb4f983811e3","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2e0aefa6-4284-3cb8-a6c3-f4b7bbc532d3","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"365939d4-4ad0-3904-8e1e-fea82963caef","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"3b1b344e-18d1-3565-9d0c-b262b84fa22c","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"18885764-dbd2-3650-a302-b05d3de1e810","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2719c641-53dc-30c5-85fd-1537703a0f86","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"dc4929c2-7879-3def-89f2-0fdffc626289","type":"node:icon-label","targetObjectId":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4d5003b3-ad5e-3f03-9ab2-016ccafd7c13","text":"port2","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"cdebc3c5-9414-3c2c-8048-77d71f1e0900","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"172877c1-1641-3580-b90c-c58cb003c378","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2b33a366-2945-3725-a400-4d1dbb657bdf","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"32a8dea0-4b5c-3aa6-b862-f77654de9b06","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ed588df3-be99-38dc-96d4-6221d5b821c9","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4fa2eb36-851c-3d36-b47a-5f131a2bf9db","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2337fece-adb5-3f16-9cde-2e198fd01e77","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"ab9eb6af-0b5e-343e-8ef8-5592b12c7dc1","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ae739c27-171b-31c8-827f-4320749b7820","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"45cac50c-ebb0-3fd8-92a3-47dc9cb63e68","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"019101f3-bb38-34cc-9cd5-90975a46d1d0","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6f7c9524-5318-335e-b64a-b73a25f0c6e9","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"b35ef65b-19db-3825-a86b-a8a11f764136","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"f1d7b1b9-e4e2-362a-b776-a2d0d782df5a","text":"«part»\npart3","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66"],"kind":"List"}},"borderNodes":[{"id":"e305a6f5-15ab-3205-bd23-942474387b1a","type":"node:rectangle","targetObjectId":"b834ce60-5364-4ff9-850f-db3a88c73c06","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"58ebb096-02e1-311d-869f-b3760efe9407","text":"port3","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"d1800403-01ef-336d-b1f9-cd654b578a20","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"9e28177b-0cf1-343c-8624-461b9337c4a0","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"bfa33608-4c2f-396d-84c1-f4f756be49a6","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"b33b1b40-3bbb-34e8-821e-3dca94ed7f4c","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"fa1bf0cc-6b44-39b3-973c-90c18cd7f876","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"dc5b99a3-3444-3229-a6db-cc0fb9ff30b0","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5b054cbf-473f-3b66-a643-85ba9e40e4f7","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"a1246205-9751-3696-b2cc-56ffb877fc9e","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"d31634eb-4d07-3af1-9aa5-9388b43cb4ed","type":"node:icon-label","targetObjectId":"b834ce60-5364-4ff9-850f-db3a88c73c06","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1739e3c3-ca48-359b-a1d9-1303ef5b886e","text":"port3","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5ba67d09-00b5-3e46-b036-0a00174e78b8","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1dfbe4d0-e63a-3ceb-be60-4a902c7a28ca","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"0942c672-492a-3247-9c5f-930fb7f785d2","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"bbe1de8c-a02f-342b-9d57-68d0c5136111","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"13ff5313-656a-33fe-9422-b2d82dd47b1d","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d08cc380-8756-3490-8203-c08140c88a02","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"49a3e51c-5e67-340b-9a8f-cdef343591fc","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"16eb41dc-9ae4-32b3-9351-1be92e46b498","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"bc27278a-bc70-31a3-ac10-b16977b3a612","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c3179171-7ddb-348c-98fe-809501bf75b3","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"bc3de929-07aa-3e60-b969-7433664cd680","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"75fb7287-e3f5-3d5f-afc4-372721095cd2","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"e1f040e8-b95e-3613-bbc9-a0a2f4b5f80a","text":"«part»\npart1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66"],"kind":"List"}},"borderNodes":[{"id":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","type":"node:rectangle","targetObjectId":"f8f30460-3264-4536-a3fb-34cba73b626d","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"ce6c089b-0286-3493-9e67-b010c7eecf07","text":"port1","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"e85f7931-160f-3400-9037-e6ece291adda","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"ee40724d-a6c1-3984-a506-165ee46e6e5d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"57a411ec-193d-3f3e-a8d6-a183f7f596e0","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4cc08a67-6349-3282-bfa6-54aaf14edad2","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"244312a5-5a37-3480-94b8-01bdfecea732","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"622a1ce2-2675-3df7-a57a-2ed7db02d92f","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"32bb6833-5ef1-311d-9480-8207e5ea7502","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"139ab1f1-fbd8-3ac5-8082-84f74fb89d97","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0","type":"node:icon-label","targetObjectId":"f8f30460-3264-4536-a3fb-34cba73b626d","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"07e23bef-59d7-32b7-9587-eaf6b063a9c3","text":"port1","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"9be6f465-a72a-37bb-b32f-4eadca2b34e0","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d1c96668-8ee0-3af7-b744-f84ffa9b2589","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"e03ec9d3-0597-3627-8422-be9c0a92e827","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f5e934e6-537d-3435-81cb-aba89e02759a","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"3ed3b0f6-4742-30bc-a69c-12289d2241c7","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1d42b067-d087-312d-9f96-af464c8e8dc6","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"dd4ff987-3d09-3928-85ba-f3cf9837a0d7","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f764f704-1d63-344c-adca-6a109e30c001","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"aa762282-5e83-33ee-843e-9650a45aa23e","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"b061214e-09e9-3d13-929d-4b99b7246d73","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"d49b952f-434c-3f82-9202-ff04a94cee9f","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6593a5f8-8a3e-378f-adce-fc995741fb9e","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":true,"pinned":false,"customizedStyleProperties":[]}],"edges":[{"id":"ed58f09c-a980-3577-8ae8-1e1d2a44c367","type":"edge:straight","targetObjectId":"4c289c86-b476-4580-956a-f2e5ea0a0b5f","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=FlowUsage","targetObjectLabel":"FlowUsage","descriptionId":"siriusComponents://edgeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=ae78d7f3-ee33-3f50-9749-8c4203f1ca9c","beginLabel":null,"centerLabel":{"id":"0b978731-f842-33a6-89c1-2afd2971c374","type":"label:edge-center","text":"","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"customizedStyleProperties":[]},"endLabel":null,"sourceId":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","targetId":"df02cadd-e712-3f19-909c-b54f8093ac1a","modifiers":[],"state":"Normal","style":{"size":1,"lineStyle":"Solid","sourceArrow":"None","targetArrow":"InputFillClosedArrow","color":"#000000","edgeType":"Manhattan"},"centerLabelEditable":true,"customizedStyleProperties":[]}],"layoutData":{"nodeLayoutData":{"e305a6f5-15ab-3205-bd23-942474387b1a":{"id":"e305a6f5-15ab-3205-bd23-942474387b1a","position":{"x":152.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"b35ef65b-19db-3825-a86b-a8a11f764136":{"id":"b35ef65b-19db-3825-a86b-a8a11f764136","position":{"x":52.29451137884877,"y":478.9999730775315},"size":{"width":157.0,"height":198.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":157.0,"height":198.0}},"75fb7287-e3f5-3d5f-afc4-372721095cd2":{"id":"75fb7287-e3f5-3d5f-afc4-372721095cd2","position":{"x":53.29451137884877,"y":30.0},"size":{"width":157.0,"height":198.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":157.0,"height":198.0}},"d49b952f-434c-3f82-9202-ff04a94cee9f":{"id":"d49b952f-434c-3f82-9202-ff04a94cee9f","position":{"x":1.0,"y":47.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":155.0,"height":150.0}},"e887fae7-592a-31d3-b4d4-7285ba21dac5":{"id":"e887fae7-592a-31d3-b4d4-7285ba21dac5","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c3179171-7ddb-348c-98fe-809501bf75b3":{"id":"c3179171-7ddb-348c-98fe-809501bf75b3","position":{"x":1.0,"y":47.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":155.0,"height":150.0}},"16eb41dc-9ae4-32b3-9351-1be92e46b498":{"id":"16eb41dc-9ae4-32b3-9351-1be92e46b498","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"ed588df3-be99-38dc-96d4-6221d5b821c9":{"id":"ed588df3-be99-38dc-96d4-6221d5b821c9","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"13ff5313-656a-33fe-9422-b2d82dd47b1d":{"id":"13ff5313-656a-33fe-9422-b2d82dd47b1d","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a":{"id":"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d1800403-01ef-336d-b1f9-cd654b578a20":{"id":"d1800403-01ef-336d-b1f9-cd654b578a20","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"e03ec9d3-0597-3627-8422-be9c0a92e827":{"id":"e03ec9d3-0597-3627-8422-be9c0a92e827","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"f7df022c-485c-3dfe-ac4c-b2da21be8a1b":{"id":"f7df022c-485c-3dfe-ac4c-b2da21be8a1b","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"e85f7931-160f-3400-9037-e6ece291adda":{"id":"e85f7931-160f-3400-9037-e6ece291adda","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2fb0c76a-454d-3468-8189-514fc7055f20":{"id":"2fb0c76a-454d-3468-8189-514fc7055f20","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d31634eb-4d07-3af1-9aa5-9388b43cb4ed":{"id":"d31634eb-4d07-3af1-9aa5-9388b43cb4ed","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"244312a5-5a37-3480-94b8-01bdfecea732":{"id":"244312a5-5a37-3480-94b8-01bdfecea732","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"dd4a182a-c45b-3923-9730-6d0dac13870c":{"id":"dd4a182a-c45b-3923-9730-6d0dac13870c","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0":{"id":"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"dd4ff987-3d09-3928-85ba-f3cf9837a0d7":{"id":"dd4ff987-3d09-3928-85ba-f3cf9837a0d7","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5d4a5e0a-f5e9-3856-99e9-83561fa129f3":{"id":"5d4a5e0a-f5e9-3856-99e9-83561fa129f3","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2b33a366-2945-3725-a400-4d1dbb657bdf":{"id":"2b33a366-2945-3725-a400-4d1dbb657bdf","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e":{"id":"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"daf9348b-b059-3f64-8d0e-ab0ae82fe917":{"id":"daf9348b-b059-3f64-8d0e-ab0ae82fe917","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09":{"id":"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09","position":{"x":1.0,"y":1.3461234289025015E-5},"size":{"width":500.0,"height":215.0000134612343},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"81aec45f-6aad-3b26-ae43-0320f9079017":{"id":"81aec45f-6aad-3b26-ae43-0320f9079017","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5ba67d09-00b5-3e46-b036-0a00174e78b8":{"id":"5ba67d09-00b5-3e46-b036-0a00174e78b8","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2337fece-adb5-3f16-9cde-2e198fd01e77":{"id":"2337fece-adb5-3f16-9cde-2e198fd01e77","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"59a05660-65dd-34c9-84f9-82075f21e48e":{"id":"59a05660-65dd-34c9-84f9-82075f21e48e","position":{"x":-503.0528781793842,"y":-545.510682582217},"size":{"width":502.0,"height":765.0},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":230.29451137884877,"height":732.9999730775314}},"3ed3b0f6-4742-30bc-a69c-12289d2241c7":{"id":"3ed3b0f6-4742-30bc-a69c-12289d2241c7","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"dc4929c2-7879-3def-89f2-0fdffc626289":{"id":"dc4929c2-7879-3def-89f2-0fdffc626289","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"365939d4-4ad0-3904-8e1e-fea82963caef":{"id":"365939d4-4ad0-3904-8e1e-fea82963caef","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"bfa33608-4c2f-396d-84c1-f4f756be49a6":{"id":"bfa33608-4c2f-396d-84c1-f4f756be49a6","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"f8a8af5c-e579-319a-8c4a-11d251c07de0":{"id":"f8a8af5c-e579-319a-8c4a-11d251c07de0","position":{"x":1.0,"y":47.0},"size":{"width":500.0,"height":684.9999730775314},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":228.29451137884877,"height":684.9999730775314}},"fa1bf0cc-6b44-39b3-973c-90c18cd7f876":{"id":"fa1bf0cc-6b44-39b3-973c-90c18cd7f876","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"ae739c27-171b-31c8-827f-4320749b7820":{"id":"ae739c27-171b-31c8-827f-4320749b7820","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"fb1f891c-283c-39ee-a072-a31d9bb573fa":{"id":"fb1f891c-283c-39ee-a072-a31d9bb573fa","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":215.0000134612343},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"32bb6833-5ef1-311d-9480-8207e5ea7502":{"id":"32bb6833-5ef1-311d-9480-8207e5ea7502","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5b054cbf-473f-3b66-a643-85ba9e40e4f7":{"id":"5b054cbf-473f-3b66-a643-85ba9e40e4f7","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"019101f3-bb38-34cc-9cd5-90975a46d1d0":{"id":"019101f3-bb38-34cc-9cd5-90975a46d1d0","position":{"x":1.0,"y":47.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":155.0,"height":150.0}},"cdebc3c5-9414-3c2c-8048-77d71f1e0900":{"id":"cdebc3c5-9414-3c2c-8048-77d71f1e0900","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9be6f465-a72a-37bb-b32f-4eadca2b34e0":{"id":"9be6f465-a72a-37bb-b32f-4eadca2b34e0","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"b584d097-895b-33a0-b5da-fb4f983811e3":{"id":"b584d097-895b-33a0-b5da-fb4f983811e3","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"788aa34d-b3a4-30f7-bdfd-13e0b2032e07":{"id":"788aa34d-b3a4-30f7-bdfd-13e0b2032e07","position":{"x":52.29451137884877,"y":253.38685393429176},"size":{"width":157.0,"height":198.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":157.0,"height":198.0}},"df02cadd-e712-3f19-909c-b54f8093ac1a":{"id":"df02cadd-e712-3f19-909c-b54f8093ac1a","position":{"x":8.0,"y":-11.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"aa762282-5e83-33ee-843e-9650a45aa23e":{"id":"aa762282-5e83-33ee-843e-9650a45aa23e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"57a411ec-193d-3f3e-a8d6-a183f7f596e0":{"id":"57a411ec-193d-3f3e-a8d6-a183f7f596e0","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"0942c672-492a-3247-9c5f-930fb7f785d2":{"id":"0942c672-492a-3247-9c5f-930fb7f785d2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"a458dab0-18a8-3c46-ba52-7ee145b69fcc":{"id":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","position":{"x":8.0,"y":193.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"18885764-dbd2-3650-a302-b05d3de1e810":{"id":"18885764-dbd2-3650-a302-b05d3de1e810","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}}},"edgeLayoutData":{"ed58f09c-a980-3577-8ae8-1e1d2a44c367":{"id":"ed58f09c-a980-3577-8ae8-1e1d2a44c367","bendingPoints":[],"edgeAnchorLayoutData":[]}},"labelLayoutData":{"ce6c089b-0286-3493-9e67-b010c7eecf07":{"id":"ce6c089b-0286-3493-9e67-b010c7eecf07","position":{"x":0.0,"y":0.0},"size":{"width":28.0,"height":12.5},"resizedByUser":false},"1a444577-cc85-38db-b817-e6e05c55d87a":{"id":"1a444577-cc85-38db-b817-e6e05c55d87a","position":{"x":0.0,"y":0.0},"size":{"width":28.0,"height":12.5},"resizedByUser":false},"0b978731-f842-33a6-89c1-2afd2971c374":{"id":"0b978731-f842-33a6-89c1-2afd2971c374","position":{"x":0.0,"y":0.0},"size":{"width":0.0,"height":0.0},"resizedByUser":false},"58ebb096-02e1-311d-869f-b3760efe9407":{"id":"58ebb096-02e1-311d-869f-b3760efe9407","position":{"x":0.0,"y":0.0},"size":{"width":28.0,"height":12.5},"resizedByUser":false}}}}', 'DiagramMinComputedSizeMigrationParticipant', '2025.12.0-202511141745', '2025-05-12 09:04:18.930917+00', '2025-12-02 09:44:56.367196+00'); +INSERT INTO public.representation_content (id, content, last_migration_performed, migration_version, created_on, last_modified_on, semantic_data_id, representation_metadata_id) VALUES ('2e9d176e-8243-4033-8b4a-2b14ec5a8572#f3d8af1e-d0da-4c6c-ad36-7292caa02335', '{"id":"f3d8af1e-d0da-4c6c-ad36-7292caa02335","kind":"siriusComponents://representation?type=Diagram","targetObjectId":"64f8adfd-dbb2-4500-9483-31c9765658d0","descriptionId":"siriusComponents://representationDescription?kind=diagramDescription&sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=db495705-e917-319b-af55-a32ad63f4089","nodes":[{"id":"59a05660-65dd-34c9-84f9-82075f21e48e","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"fc1020e5-2c51-3952-9b3f-8e1cf023edca","text":"«part»\npart1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5"],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"e887fae7-592a-31d3-b4d4-7285ba21dac5","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"fd520a8b-4fe5-3993-a916-6f1934b1c16d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"dd4a182a-c45b-3923-9730-6d0dac13870c","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"0c80aad1-712f-3624-bd36-395731521d10","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"81aec45f-6aad-3b26-ae43-0320f9079017","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"cc9cc9df-96d8-3819-aa50-d192fecfffc6","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"04978beb-7f5b-3c5c-bee0-004589283cb1","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=84aaf577-0758-3fd6-b85c-a4ced98d2836","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"cad55113-f8eb-3863-97ed-c929fe3530e3","text":"parts","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"9d1c40c9-ad3b-3b0e-82d2-499b8ac1c9ee","type":"node:icon-label","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=892af7b9-5576-3b0b-84a4-f43e461677ec","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"44d3e0c8-90ee-3a73-b744-1a36896c8052","text":"part1","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"240644fb-f552-3a25-9a30-14296dd05114","type":"node:icon-label","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=892af7b9-5576-3b0b-84a4-f43e461677ec","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"bab36120-534d-3c6b-81ba-1f83ede4e794","text":"part2","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"054ca8b9-cc2e-384c-908a-ff890afeab42","type":"node:icon-label","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=892af7b9-5576-3b0b-84a4-f43e461677ec","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"443e6d3f-5001-38fd-8ea3-f0e06164d910","text":"part3","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"daf9348b-b059-3f64-8d0e-ab0ae82fe917","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"24310152-a7e7-33e0-8172-7226079247cb","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"fb1f891c-283c-39ee-a072-a31d9bb573fa","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"909c04cf-f602-3314-8796-9748dbefa5aa","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f7f5e139-56bb-3118-b2dd-168ca508bc86","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5d4a5e0a-f5e9-3856-99e9-83561fa129f3","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"0f425839-807b-3e83-841b-bf7c04955f80","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2fb0c76a-454d-3468-8189-514fc7055f20","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"113912a6-8d11-31b0-b335-08794ca275f5","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f7df022c-485c-3dfe-ac4c-b2da21be8a1b","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4600a4ff-8908-35b4-bced-daf4aa9a1fcc","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f8a8af5c-e579-319a-8c4a-11d251c07de0","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"c83e5ea6-1653-3281-bc8c-8b501405ee4e","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[{"id":"75fb7287-e3f5-3d5f-afc4-372721095cd2","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"e1f040e8-b95e-3613-bbc9-a0a2f4b5f80a","text":"«part»\npart1","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5"],"kind":"List"}},"borderNodes":[{"id":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","type":"node:rectangle","targetObjectId":"f8f30460-3264-4536-a3fb-34cba73b626d","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"ce6c089b-0286-3493-9e67-b010c7eecf07","text":"port1","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"e85f7931-160f-3400-9037-e6ece291adda","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"ee40724d-a6c1-3984-a506-165ee46e6e5d","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"57a411ec-193d-3f3e-a8d6-a183f7f596e0","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4cc08a67-6349-3282-bfa6-54aaf14edad2","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"244312a5-5a37-3480-94b8-01bdfecea732","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"622a1ce2-2675-3df7-a57a-2ed7db02d92f","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"9f2843ff-bf37-3453-8166-2b36619bf6ad","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=84aaf577-0758-3fd6-b85c-a4ced98d2836","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"b5173e3e-466c-35b8-9b2f-9d9a75431071","text":"parts","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"32bb6833-5ef1-311d-9480-8207e5ea7502","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"139ab1f1-fbd8-3ac5-8082-84f74fb89d97","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0","type":"node:icon-label","targetObjectId":"f8f30460-3264-4536-a3fb-34cba73b626d","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"07e23bef-59d7-32b7-9587-eaf6b063a9c3","text":"port1","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"9be6f465-a72a-37bb-b32f-4eadca2b34e0","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d1c96668-8ee0-3af7-b744-f84ffa9b2589","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"e03ec9d3-0597-3627-8422-be9c0a92e827","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f5e934e6-537d-3435-81cb-aba89e02759a","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"3ed3b0f6-4742-30bc-a69c-12289d2241c7","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1d42b067-d087-312d-9f96-af464c8e8dc6","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"dd4ff987-3d09-3928-85ba-f3cf9837a0d7","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"f764f704-1d63-344c-adca-6a109e30c001","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"aa762282-5e83-33ee-843e-9650a45aa23e","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"b061214e-09e9-3d13-929d-4b99b7246d73","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"d49b952f-434c-3f82-9202-ff04a94cee9f","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6593a5f8-8a3e-378f-adce-fc995741fb9e","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"f23a7031-770e-3cc4-bd20-1e0174a3aa2f","type":"node:rectangle","targetObjectId":"f431b2c3-3854-4239-a93b-97ef8be9fc4e","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f7099844-752b-31cc-b373-5dc40a5a71b8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2a664dcb-b58b-3cbf-a82c-08e193b910d4","text":"satisfy requirements","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"788aa34d-b3a4-30f7-bdfd-13e0b2032e07","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"0298eae4-fffe-38a6-88e3-90bd30335e9b","text":"«part»\npart2","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5"],"kind":"List"}},"borderNodes":[{"id":"df02cadd-e712-3f19-909c-b54f8093ac1a","type":"node:rectangle","targetObjectId":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"1a444577-cc85-38db-b817-e6e05c55d87a","text":"port2","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"478aaa4f-6f54-33a4-9e3b-f49e4ce03bff","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"b584d097-895b-33a0-b5da-fb4f983811e3","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2e0aefa6-4284-3cb8-a6c3-f4b7bbc532d3","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"365939d4-4ad0-3904-8e1e-fea82963caef","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"3b1b344e-18d1-3565-9d0c-b262b84fa22c","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"d8446569-e4fe-3d84-9e9d-c9ed4e1f5764","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=84aaf577-0758-3fd6-b85c-a4ced98d2836","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"986fbb3b-ff63-3a6a-87e8-57e38d8d1090","text":"parts","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"18885764-dbd2-3650-a302-b05d3de1e810","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"2719c641-53dc-30c5-85fd-1537703a0f86","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"dc4929c2-7879-3def-89f2-0fdffc626289","type":"node:icon-label","targetObjectId":"a2f9dfac-4206-4b49-8ea4-20653215a5bb","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4d5003b3-ad5e-3f03-9ab2-016ccafd7c13","text":"port2","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"cdebc3c5-9414-3c2c-8048-77d71f1e0900","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"172877c1-1641-3580-b90c-c58cb003c378","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2b33a366-2945-3725-a400-4d1dbb657bdf","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"32a8dea0-4b5c-3aa6-b862-f77654de9b06","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ed588df3-be99-38dc-96d4-6221d5b821c9","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4fa2eb36-851c-3d36-b47a-5f131a2bf9db","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"2337fece-adb5-3f16-9cde-2e198fd01e77","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"ab9eb6af-0b5e-343e-8ef8-5592b12c7dc1","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"ae739c27-171b-31c8-827f-4320749b7820","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"45cac50c-ebb0-3fd8-92a3-47dc9cb63e68","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"019101f3-bb38-34cc-9cd5-90975a46d1d0","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"6f7c9524-5318-335e-b64a-b73a25f0c6e9","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"67e966c2-e89e-3635-b891-7a12a92b1c9f","type":"node:rectangle","targetObjectId":"f8d34ea9-31cd-446d-965b-7f36016c912a","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part2","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f7099844-752b-31cc-b373-5dc40a5a71b8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"bbea3385-b5e6-3e79-ad17-c063e7d0fa7a","text":"satisfy requirements","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]},{"id":"b35ef65b-19db-3825-a86b-a8a11f764136","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=bd119f62-45c5-3868-9727-9f954e05e4fa","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"f1d7b1b9-e4e2-362a-b776-a2d0d782df5a","text":"«part»\npart3","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PartUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"IF_CHILDREN","overflowStrategy":"WRAP","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":10,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":false,"topGap":0,"bottomGap":0,"growableNodeIds":["siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5"],"kind":"List"}},"borderNodes":[{"id":"e305a6f5-15ab-3205-bd23-942474387b1a","type":"node:rectangle","targetObjectId":"b834ce60-5364-4ff9-850f-db3a88c73c06","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6e63f4a7-2373-3f68-97b4-a3bae4e213d5","borderNode":true,"initialBorderNodePosition":"EAST","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":null,"outsideLabels":[{"id":"58ebb096-02e1-311d-869f-b3760efe9407","text":"port3","outsideLabelLocation":"BOTTOM_MIDDLE","style":{"color":"#000000","fontSize":12,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"overflowStrategy":"NONE","textAlign":"LEFT","customizedStyleProperties":[]}],"style":{"background":"#ffffff","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":10,"defaultHeight":10,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"childNodes":[{"id":"d1800403-01ef-336d-b1f9-cd654b578a20","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c901d8ce-4c57-3ede-8fdb-3c5aa91b67ba","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"9e28177b-0cf1-343c-8624-461b9337c4a0","text":"doc","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"bfa33608-4c2f-396d-84c1-f4f756be49a6","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a1300415-10e4-37bb-87ed-206ec95079f0","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"b33b1b40-3bbb-34e8-821e-3dca94ed7f4c","text":"attributes","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"fa1bf0cc-6b44-39b3-973c-90c18cd7f876","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f664d1f2-e48d-3f5a-a073-141fc0ddc418","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"dc5b99a3-3444-3229-a6db-cc0fb9ff30b0","text":"actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"57cb9dec-6e3a-3263-b5fb-953288609e37","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=84aaf577-0758-3fd6-b85c-a4ced98d2836","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"4e2a2f89-8751-374b-843d-bbce4d94ab86","text":"parts","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5b054cbf-473f-3b66-a643-85ba9e40e4f7","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=cc126737-2324-3253-ae11-37d5b0dee7b9","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"a1246205-9751-3696-b2cc-56ffb877fc9e","text":"ports","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[{"id":"d31634eb-4d07-3af1-9aa5-9388b43cb4ed","type":"node:icon-label","targetObjectId":"b834ce60-5364-4ff9-850f-db3a88c73c06","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PortUsage","targetObjectLabel":"port3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=feb64ff6-1216-3056-bc12-b9d78e349d7f","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1739e3c3-ca48-359b-a1d9-1303ef5b886e","text":"port3","insideLabelLocation":"TOP_LEFT","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":["/icons/full/obj16/PortUsage.svg"],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":false,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"WRAP","textAlign":"LEFT","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":15,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"5ba67d09-00b5-3e46-b036-0a00174e78b8","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=30a9de2f-14f9-3de6-b68e-06b79b675555","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"1dfbe4d0-e63a-3ceb-be60-4a902c7a28ca","text":"action flow","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"0942c672-492a-3247-9c5f-930fb7f785d2","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c47f5c71-1cc7-3f23-8c03-c335c2d13c66","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"bbe1de8c-a02f-342b-9d57-68d0c5136111","text":"state transition","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"13ff5313-656a-33fe-9422-b2d82dd47b1d","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=c97028bb-f0ba-3e9e-97a6-170cb6345d62","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"d08cc380-8756-3490-8203-c08140c88a02","text":"states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=a57f3491-bd3e-38c6-bb8b-b0a4b570bd3a","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"49a3e51c-5e67-340b-9a8f-cdef343591fc","text":"exhibit states","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"16eb41dc-9ae4-32b3-9351-1be92e46b498","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=fe94bbc6-f9c3-34cb-90fa-34a6701f9c17","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"bc27278a-bc70-31a3-ac10-b16977b3a612","text":"perform actions","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"c3179171-7ddb-348c-98fe-809501bf75b3","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=6f8d80de-d97e-34a4-80ab-320ebefe26f5","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":[],"state":"Normal","collapsingState":"EXPANDED","insideLabel":{"id":"bc3de929-07aa-3e60-b969-7433664cd680","text":"interconnection","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"kind":"FreeForm"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"fe2065dc-6754-3ddb-b7d8-e841be1b6c83","type":"node:rectangle","targetObjectId":"cc534549-70f3-49ff-b41b-35926aa89032","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part3","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f7099844-752b-31cc-b373-5dc40a5a71b8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"8fc55830-3ab3-36d0-a6ff-0b54c0aaf1e6","text":"satisfy requirements","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":155,"defaultHeight":150,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]},{"id":"7f7b046b-fb41-3a74-b2f6-c6ce83bce484","type":"node:rectangle","targetObjectId":"cf3609bb-fa5b-41ff-84f0-9083b5153d1b","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=PartUsage","targetObjectLabel":"part1","descriptionId":"siriusComponents://nodeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=f7099844-752b-31cc-b373-5dc40a5a71b8","borderNode":false,"initialBorderNodePosition":"NONE","modifiers":["Hidden"],"state":"Hidden","collapsingState":"EXPANDED","insideLabel":{"id":"6ed16da3-caec-31a9-b364-7a0ffe333ae5","text":"satisfy requirements","insideLabelLocation":"TOP_CENTER","style":{"color":"#000000","fontSize":12,"bold":false,"italic":true,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"isHeader":true,"headerSeparatorDisplayMode":"NEVER","overflowStrategy":"NONE","textAlign":"CENTER","customizedStyleProperties":[]},"outsideLabels":[],"style":{"background":"transparent","borderColor":"#000000","borderSize":1,"borderRadius":0,"borderStyle":"Solid","childrenLayoutStrategy":{"areChildNodesDraggable":true,"topGap":0,"bottomGap":10,"growableNodeIds":[],"kind":"List"}},"borderNodes":[],"childNodes":[],"defaultWidth":155,"defaultHeight":60,"labelEditable":false,"deletable":false,"pinned":false,"customizedStyleProperties":[]}],"defaultWidth":194,"defaultHeight":60,"labelEditable":true,"deletable":true,"pinned":false,"customizedStyleProperties":[]}],"edges":[{"id":"ed58f09c-a980-3577-8ae8-1e1d2a44c367","type":"edge:straight","targetObjectId":"f51cadc9-2ad7-406d-9c07-d51cd6f241f1","targetObjectKind":"siriusComponents://semantic?domain=sysml&entity=FlowUsage","targetObjectLabel":"FlowUsage","descriptionId":"siriusComponents://edgeDescription?sourceKind=view&sourceId=8dcd14b0-6259-3193-ad2c-743f394c68e4&sourceElementId=ae78d7f3-ee33-3f50-9749-8c4203f1ca9c","beginLabel":null,"centerLabel":{"id":"0b978731-f842-33a6-89c1-2afd2971c374","type":"label:edge-center","text":"","style":{"color":"#000000","fontSize":14,"bold":false,"italic":false,"underline":false,"strikeThrough":false,"iconURL":[],"background":"transparent","borderColor":"black","borderSize":0,"borderRadius":3,"borderStyle":"Solid","maxWidth":null,"visibility":"visible"},"customizedStyleProperties":[]},"endLabel":null,"sourceId":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","targetId":"df02cadd-e712-3f19-909c-b54f8093ac1a","modifiers":[],"state":"Normal","style":{"size":1,"lineStyle":"Solid","sourceArrow":"None","targetArrow":"InputFillClosedArrow","color":"#000000","edgeType":"Manhattan"},"centerLabelEditable":true,"deletable":true,"customizedStyleProperties":[]}],"layoutData":{"nodeLayoutData":{"e305a6f5-15ab-3205-bd23-942474387b1a":{"id":"e305a6f5-15ab-3205-bd23-942474387b1a","position":{"x":189.0,"y":8.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"fe2065dc-6754-3ddb-b7d8-e841be1b6c83":{"id":"fe2065dc-6754-3ddb-b7d8-e841be1b6c83","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"b35ef65b-19db-3825-a86b-a8a11f764136":{"id":"b35ef65b-19db-3825-a86b-a8a11f764136","position":{"x":52.29451137884877,"y":478.9999730775315},"size":{"width":194.0,"height":198.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":133.33334350585938,"height":92.5}},"75fb7287-e3f5-3d5f-afc4-372721095cd2":{"id":"75fb7287-e3f5-3d5f-afc4-372721095cd2","position":{"x":52.29451137884877,"y":28.5},"size":{"width":194.0,"height":198.0},"resizedByUser":false,"movedByUser":true,"handleLayoutData":[],"minComputedSize":{"width":133.33334350585938,"height":92.5}},"d49b952f-434c-3f82-9202-ff04a94cee9f":{"id":"d49b952f-434c-3f82-9202-ff04a94cee9f","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":131.33334350585938,"height":44.5}},"e887fae7-592a-31d3-b4d4-7285ba21dac5":{"id":"e887fae7-592a-31d3-b4d4-7285ba21dac5","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c3179171-7ddb-348c-98fe-809501bf75b3":{"id":"c3179171-7ddb-348c-98fe-809501bf75b3","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":131.33334350585938,"height":44.5}},"16eb41dc-9ae4-32b3-9351-1be92e46b498":{"id":"16eb41dc-9ae4-32b3-9351-1be92e46b498","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"ed588df3-be99-38dc-96d4-6221d5b821c9":{"id":"ed588df3-be99-38dc-96d4-6221d5b821c9","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"13ff5313-656a-33fe-9422-b2d82dd47b1d":{"id":"13ff5313-656a-33fe-9422-b2d82dd47b1d","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a":{"id":"9fb91901-4c02-3ba0-84b1-f834e9bf8e8a","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d1800403-01ef-336d-b1f9-cd654b578a20":{"id":"d1800403-01ef-336d-b1f9-cd654b578a20","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"e03ec9d3-0597-3627-8422-be9c0a92e827":{"id":"e03ec9d3-0597-3627-8422-be9c0a92e827","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"f7df022c-485c-3dfe-ac4c-b2da21be8a1b":{"id":"f7df022c-485c-3dfe-ac4c-b2da21be8a1b","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"e85f7931-160f-3400-9037-e6ece291adda":{"id":"e85f7931-160f-3400-9037-e6ece291adda","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2fb0c76a-454d-3468-8189-514fc7055f20":{"id":"2fb0c76a-454d-3468-8189-514fc7055f20","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d31634eb-4d07-3af1-9aa5-9388b43cb4ed":{"id":"d31634eb-4d07-3af1-9aa5-9388b43cb4ed","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9f2843ff-bf37-3453-8166-2b36619bf6ad":{"id":"9f2843ff-bf37-3453-8166-2b36619bf6ad","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"244312a5-5a37-3480-94b8-01bdfecea732":{"id":"244312a5-5a37-3480-94b8-01bdfecea732","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"67e966c2-e89e-3635-b891-7a12a92b1c9f":{"id":"67e966c2-e89e-3635-b891-7a12a92b1c9f","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"054ca8b9-cc2e-384c-908a-ff890afeab42":{"id":"054ca8b9-cc2e-384c-908a-ff890afeab42","position":{"x":0.0,"y":60.5},"size":{"width":500.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"dd4a182a-c45b-3923-9730-6d0dac13870c":{"id":"dd4a182a-c45b-3923-9730-6d0dac13870c","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0":{"id":"6afd6120-ccf9-3b6c-bda1-aed3a30e66a0","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"dd4ff987-3d09-3928-85ba-f3cf9837a0d7":{"id":"dd4ff987-3d09-3928-85ba-f3cf9837a0d7","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5d4a5e0a-f5e9-3856-99e9-83561fa129f3":{"id":"5d4a5e0a-f5e9-3856-99e9-83561fa129f3","position":{"x":1.0,"y":2.692246857805003E-5},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2b33a366-2945-3725-a400-4d1dbb657bdf":{"id":"2b33a366-2945-3725-a400-4d1dbb657bdf","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"240644fb-f552-3a25-9a30-14296dd05114":{"id":"240644fb-f552-3a25-9a30-14296dd05114","position":{"x":0.0,"y":44.5},"size":{"width":500.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"04978beb-7f5b-3c5c-bee0-004589283cb1":{"id":"04978beb-7f5b-3c5c-bee0-004589283cb1","position":{"x":1.0,"y":47.0},"size":{"width":500.0,"height":86.5},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":59.33332824707031,"height":86.5}},"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e":{"id":"1b889ac0-0f1b-38ae-af1b-59a0b6fd081e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"daf9348b-b059-3f64-8d0e-ab0ae82fe917":{"id":"daf9348b-b059-3f64-8d0e-ab0ae82fe917","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09":{"id":"c5337def-0cb1-34c4-81a4-5d8cdf3a9e09","position":{"x":1.0,"y":1.3461234289025015E-5},"size":{"width":500.0,"height":215.0000134612343},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"81aec45f-6aad-3b26-ae43-0320f9079017":{"id":"81aec45f-6aad-3b26-ae43-0320f9079017","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"7f7b046b-fb41-3a74-b2f6-c6ce83bce484":{"id":"7f7b046b-fb41-3a74-b2f6-c6ce83bce484","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5ba67d09-00b5-3e46-b036-0a00174e78b8":{"id":"5ba67d09-00b5-3e46-b036-0a00174e78b8","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"2337fece-adb5-3f16-9cde-2e198fd01e77":{"id":"2337fece-adb5-3f16-9cde-2e198fd01e77","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"59a05660-65dd-34c9-84f9-82075f21e48e":{"id":"59a05660-65dd-34c9-84f9-82075f21e48e","position":{"x":-503.0528781793842,"y":-545.510682582217},"size":{"width":502.0,"height":819.4999730775314},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":267.29451137884877,"height":819.4999730775314}},"3ed3b0f6-4742-30bc-a69c-12289d2241c7":{"id":"3ed3b0f6-4742-30bc-a69c-12289d2241c7","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"dc4929c2-7879-3def-89f2-0fdffc626289":{"id":"dc4929c2-7879-3def-89f2-0fdffc626289","position":{"x":0.0,"y":30.0},"size":{"width":155.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9d1c40c9-ad3b-3b0e-82d2-499b8ac1c9ee":{"id":"9d1c40c9-ad3b-3b0e-82d2-499b8ac1c9ee","position":{"x":0.0,"y":28.5},"size":{"width":500.0,"height":16.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}},"365939d4-4ad0-3904-8e1e-fea82963caef":{"id":"365939d4-4ad0-3904-8e1e-fea82963caef","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"bfa33608-4c2f-396d-84c1-f4f756be49a6":{"id":"bfa33608-4c2f-396d-84c1-f4f756be49a6","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"f8a8af5c-e579-319a-8c4a-11d251c07de0":{"id":"f8a8af5c-e579-319a-8c4a-11d251c07de0","position":{"x":1.0,"y":133.5},"size":{"width":500.0,"height":684.9999730775314},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":265.29451137884877,"height":684.9999730775314}},"fa1bf0cc-6b44-39b3-973c-90c18cd7f876":{"id":"fa1bf0cc-6b44-39b3-973c-90c18cd7f876","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"ae739c27-171b-31c8-827f-4320749b7820":{"id":"ae739c27-171b-31c8-827f-4320749b7820","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"fb1f891c-283c-39ee-a072-a31d9bb573fa":{"id":"fb1f891c-283c-39ee-a072-a31d9bb573fa","position":{"x":1.0,"y":0.0},"size":{"width":500.0,"height":215.0000134612343},"resizedByUser":true,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"32bb6833-5ef1-311d-9480-8207e5ea7502":{"id":"32bb6833-5ef1-311d-9480-8207e5ea7502","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"5b054cbf-473f-3b66-a643-85ba9e40e4f7":{"id":"5b054cbf-473f-3b66-a643-85ba9e40e4f7","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"019101f3-bb38-34cc-9cd5-90975a46d1d0":{"id":"019101f3-bb38-34cc-9cd5-90975a46d1d0","position":{"x":1.0,"y":47.0},"size":{"width":192.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":131.33334350585938,"height":44.5}},"57cb9dec-6e3a-3263-b5fb-953288609e37":{"id":"57cb9dec-6e3a-3263-b5fb-953288609e37","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"cdebc3c5-9414-3c2c-8048-77d71f1e0900":{"id":"cdebc3c5-9414-3c2c-8048-77d71f1e0900","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"d8446569-e4fe-3d84-9e9d-c9ed4e1f5764":{"id":"d8446569-e4fe-3d84-9e9d-c9ed4e1f5764","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"9be6f465-a72a-37bb-b32f-4eadca2b34e0":{"id":"9be6f465-a72a-37bb-b32f-4eadca2b34e0","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"f23a7031-770e-3cc4-bd20-1e0174a3aa2f":{"id":"f23a7031-770e-3cc4-bd20-1e0174a3aa2f","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"b584d097-895b-33a0-b5da-fb4f983811e3":{"id":"b584d097-895b-33a0-b5da-fb4f983811e3","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"788aa34d-b3a4-30f7-bdfd-13e0b2032e07":{"id":"788aa34d-b3a4-30f7-bdfd-13e0b2032e07","position":{"x":52.29451137884877,"y":253.38685393429176},"size":{"width":194.0,"height":198.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":133.33334350585938,"height":92.5}},"df02cadd-e712-3f19-909c-b54f8093ac1a":{"id":"df02cadd-e712-3f19-909c-b54f8093ac1a","position":{"x":189.0,"y":22.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":true,"handleLayoutData":[{"edgeId":"ed58f09c-a980-3577-8ae8-1e1d2a44c367","position":{"x":-6.0,"y":5.544289454769853},"handlePosition":"right","type":"target"}],"minComputedSize":{"width":16.0,"height":16.0}},"aa762282-5e83-33ee-843e-9650a45aa23e":{"id":"aa762282-5e83-33ee-843e-9650a45aa23e","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"0942c672-492a-3247-9c5f-930fb7f785d2":{"id":"0942c672-492a-3247-9c5f-930fb7f785d2","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":150.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"57a411ec-193d-3f3e-a8d6-a183f7f596e0":{"id":"57a411ec-193d-3f3e-a8d6-a183f7f596e0","position":{"x":0.0,"y":0.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"18885764-dbd2-3650-a302-b05d3de1e810":{"id":"18885764-dbd2-3650-a302-b05d3de1e810","position":{"x":1.0,"y":50.0},"size":{"width":155.0,"height":60.0},"resizedByUser":false,"movedByUser":false,"handleLayoutData":[],"minComputedSize":{"width":0.0,"height":0.0}},"a458dab0-18a8-3c46-ba52-7ee145b69fcc":{"id":"a458dab0-18a8-3c46-ba52-7ee145b69fcc","position":{"x":189.0,"y":22.0},"size":{"width":16.0,"height":16.0},"resizedByUser":false,"movedByUser":true,"handleLayoutData":[],"minComputedSize":{"width":16.0,"height":16.0}}},"edgeLayoutData":{"ed58f09c-a980-3577-8ae8-1e1d2a44c367":{"id":"ed58f09c-a980-3577-8ae8-1e1d2a44c367","bendingPoints":[],"edgeAnchorLayoutData":[]}},"labelLayoutData":{"ce6c089b-0286-3493-9e67-b010c7eecf07":{"id":"ce6c089b-0286-3493-9e67-b010c7eecf07","position":{"x":24.0,"y":-28.5},"size":{"width":28.0,"height":12.5},"resizedByUser":false,"movedByUser":false},"1a444577-cc85-38db-b817-e6e05c55d87a":{"id":"1a444577-cc85-38db-b817-e6e05c55d87a","position":{"x":22.0,"y":-30.5},"size":{"width":28.0,"height":12.5},"resizedByUser":false,"movedByUser":false},"0b978731-f842-33a6-89c1-2afd2971c374":{"id":"0b978731-f842-33a6-89c1-2afd2971c374","position":{"x":0.0,"y":0.0},"size":{"width":0.0,"height":0.0},"resizedByUser":false,"movedByUser":false},"58ebb096-02e1-311d-869f-b3760efe9407":{"id":"58ebb096-02e1-311d-869f-b3760efe9407","position":{"x":24.0,"y":-14.25},"size":{"width":28.0,"height":12.5},"resizedByUser":false,"movedByUser":false}}}}', 'DiagramMinComputedSizeMigrationParticipant', '2025.12.0-202511141745', '2025-05-12 09:04:18.930917+00', '2026-02-20 13:36:42.993138+00', '2e9d176e-8243-4033-8b4a-2b14ec5a8572', 'f3d8af1e-d0da-4c6c-ad36-7292caa02335'); -- diff --git a/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorAsUsageImpl.java b/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorAsUsageImpl.java index 7072ce67f..75a154234 100644 --- a/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorAsUsageImpl.java +++ b/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorAsUsageImpl.java @@ -32,8 +32,8 @@ import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.ConnectorAsUsage; import org.eclipse.syson.sysml.Element; +import org.eclipse.syson.sysml.EndFeatureMembership; import org.eclipse.syson.sysml.Feature; -import org.eclipse.syson.sysml.FeatureMembership; import org.eclipse.syson.sysml.ReferenceSubsetting; import org.eclipse.syson.sysml.Relationship; import org.eclipse.syson.sysml.SysmlPackage; @@ -290,9 +290,9 @@ public EList getAssociation() { @Override public EList getConnectorEnd() { List endFeatures = this.getOwnedRelationship().stream() - .filter(FeatureMembership.class::isInstance) - .map(FeatureMembership.class::cast) - .map(FeatureMembership::getOwnedMemberFeature) + .filter(EndFeatureMembership.class::isInstance) + .map(EndFeatureMembership.class::cast) + .map(EndFeatureMembership::getOwnedMemberFeature) .filter(Feature::isIsEnd) .toList(); return new EcoreEList.UnmodifiableEList<>(this, SysmlPackage.eINSTANCE.getConnector_ConnectorEnd(), endFeatures.size(), endFeatures.toArray()); diff --git a/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorImpl.java b/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorImpl.java index 7e8b60e32..cb0681969 100644 --- a/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorImpl.java +++ b/backend/metamodel/syson-sysml-metamodel/src/main/java/org/eclipse/syson/sysml/impl/ConnectorImpl.java @@ -241,10 +241,11 @@ public EList getAssociation() { */ @Override public EList getConnectorEnd() { - List endFeatures = this.getOwnedRelationship().stream() + List endFeatures = this.getOwnedRelationship().stream() .filter(EndFeatureMembership.class::isInstance) .map(EndFeatureMembership.class::cast) - .flatMap(fm -> fm.getOwnedRelatedElement().stream()) + .map(EndFeatureMembership::getOwnedMemberFeature) + .filter(Feature::isIsEnd) .toList(); return new EcoreEList.UnmodifiableEList<>(this, SysmlPackage.eINSTANCE.getConnector_ConnectorEnd(), endFeatures.size(), endFeatures.toArray()); } @@ -291,6 +292,7 @@ public EList getRelatedFeature() { .map(Feature::getOwnedReferenceSubsetting) .filter(Objects::nonNull) .map(ReferenceSubsetting::getSubsettedFeature) + .filter(Objects::nonNull) .toList(); return new EcoreEList.UnmodifiableEList<>(this, SysmlPackage.eINSTANCE.getConnector_RelatedFeature(), data.size(), data.toArray()); } diff --git a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramMutationElementService.java b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramMutationElementService.java index 74d240d17..4ee34e360 100644 --- a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramMutationElementService.java +++ b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramMutationElementService.java @@ -46,7 +46,7 @@ import org.eclipse.syson.services.api.SiriusWebCoreServices; import org.eclipse.syson.sysml.BindingConnectorAsUsage; import org.eclipse.syson.sysml.ConnectionUsage; -import org.eclipse.syson.sysml.ConnectorAsUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.EndFeatureMembership; import org.eclipse.syson.sysml.Expose; @@ -478,11 +478,11 @@ public Element showContentAsNested(Element element, Node selectedNode, IEditingC } /** - * Set a new source {@link Feature} for the given {@link ConnectorAsUsage}. Note that it might also move the - * {@link ConnectorAsUsage} to a new container to match creation rules. + * Set a new source {@link Feature} for the given {@link Connector}. Note that it might also move the + * {@link Connector} to a new container to match creation rules. * - * @param connectorAsUsage - * the given {@link ConnectorAsUsage}. + * @param connector + * the given {@link Connector}. * @param newSource * the new target {@link Feature}. * @param sourceNode @@ -493,45 +493,62 @@ public Element showContentAsNested(Element element, Node selectedNode, IEditingC * the editing context * @param diagram * the context diagram - * @return the given {@link ConnectorAsUsage}. + * @return the given {@link Connector}. */ - public ConnectorAsUsage reconnectSource(ConnectorAsUsage connectorAsUsage, Feature newSource, Node sourceNode, Node targetNode, IEditingContext editingContext, Diagram diagram) { - Optional optOldTarget = this.metamodelQueryElementService.getTarget(connectorAsUsage).stream().findFirst(); + public Connector reconnectSource(Connector connector, Feature newSource, Node sourceNode, Node targetNode, IEditingContext editingContext, Diagram diagram) { + Optional optOldTarget = this.metamodelQueryElementService.getConnectorTarget(connector).stream().findFirst(); if (optOldTarget.isEmpty()) { // Invalid model for reconnection - this.feedbackMessageService.addFeedbackMessage(new Message("Invalid connector : Missing target", MessageLevel.WARNING)); - return connectorAsUsage; + this.feedbackMessageService.addFeedbackMessage(new Message("Invalid connector: missing target", MessageLevel.WARNING)); + return connector; } + Feature oldTarget = optOldTarget.get(); + // Recompute the best container - this.getConnectorAsUsageContainer(sourceNode, targetNode, newSource, optOldTarget.get(), editingContext, diagram).ifPresent(newContainer -> { - if (newContainer != connectorAsUsage.getOwner()) { + this.getConnectorContainer(sourceNode, targetNode, newSource, oldTarget, editingContext, diagram).ifPresent(newContainer -> { + if (newContainer != connector.getOwner()) { // Move to the new container and notify the user - newContainer.getOwnedRelationship().add(connectorAsUsage.getOwningRelationship()); - if (connectorAsUsage instanceof PartUsage) { - connectorAsUsage.setIsComposite(newContainer instanceof Type); + newContainer.getOwnedRelationship().add(connector.getOwningRelationship()); + if (connector instanceof PartUsage) { + connector.setIsComposite(newContainer instanceof Type); } this.feedbackMessageService.addFeedbackMessage(new Message("The connection has been moved to a new owner " + newContainer.getQualifiedName(), MessageLevel.INFO)); } }); // Recompute both target and source chain - List endFeatureMemberships = connectorAsUsage.getOwnedFeatureMembership().stream() + List endFeatureMemberships = connector.getOwnedFeatureMembership().stream() .filter(EndFeatureMembership.class::isInstance) .map(EndFeatureMembership.class::cast) .toList(); - connectorAsUsage.getOwnedRelationship().removeAll(endFeatureMemberships); + connector.getOwnedRelationship().removeAll(endFeatureMemberships); + + Element newSourceContainer = null; + Element oldTargetContainer = null; + + if (sourceNode != null && sourceNode.isBorderNode()) { + newSourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagram).orElse(null); + } else { + newSourceContainer = newSource.getOwner(); + } + if (targetNode != null && targetNode.isBorderNode()) { + oldTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagram).orElse(null); + } else { + oldTargetContainer = oldTarget.getOwner(); + } + + this.metamodelMutationElementService.setConnectorEnds(connector, newSource, oldTarget, newSourceContainer, oldTargetContainer, connector.getOwner()); - this.metamodelMutationElementService.setConnectorEnds(connectorAsUsage, newSource, optOldTarget.get(), connectorAsUsage.getOwner()); - return connectorAsUsage; + return connector; } /** - * Set a new target {@link Feature} for the given {@link ConnectorAsUsage}. Note that it might also move the - * {@link ConnectorAsUsage} to a new container to match creation rules. + * Set a new target {@link Feature} for the given {@link Connector}. Note that it might also move the + * {@link Connector} to a new container to match creation rules. * - * @param connectorAsUsage - * the given {@link ConnectorAsUsage}. + * @param connector + * the given {@link Connector}. * @param newTarget * the new target {@link Element}. * @param sourceNode @@ -542,37 +559,52 @@ public ConnectorAsUsage reconnectSource(ConnectorAsUsage connectorAsUsage, Featu * the editing context * @param diagram * the context diagram - * @return the given {@link ConnectorAsUsage}. + * @return the given {@link Connector}. */ - public ConnectorAsUsage reconnectTarget(ConnectorAsUsage connectorAsUsage, Feature newTarget, Node sourceNode, Node targetNode, IEditingContext editingContext, Diagram diagram) { - Feature source = this.metamodelQueryElementService.getSource(connectorAsUsage); + public Connector reconnectTarget(Connector connector, Feature newTarget, Node sourceNode, Node targetNode, IEditingContext editingContext, Diagram diagram) { + Feature source = this.metamodelQueryElementService.getConnectorSource(connector); if (source == null) { // Invalid model for reconnection - this.feedbackMessageService.addFeedbackMessage(new Message("Invalid connector : Missing source", MessageLevel.WARNING)); - return connectorAsUsage; + this.feedbackMessageService.addFeedbackMessage(new Message("Invalid connector: missing source", MessageLevel.WARNING)); + return connector; } // Recompute the best container - this.getConnectorAsUsageContainer(sourceNode, targetNode, source, newTarget, editingContext, diagram).ifPresent(newContainer -> { - if (newContainer != connectorAsUsage.getOwner()) { + this.getConnectorContainer(sourceNode, targetNode, source, newTarget, editingContext, diagram).ifPresent(newContainer -> { + if (newContainer != connector.getOwner()) { // Move to the new container and notify the user - newContainer.getOwnedRelationship().add(connectorAsUsage.getOwningRelationship()); - if (connectorAsUsage instanceof PartUsage) { - connectorAsUsage.setIsComposite(newContainer instanceof Type); + newContainer.getOwnedRelationship().add(connector.getOwningRelationship()); + if (connector instanceof PartUsage) { + connector.setIsComposite(newContainer instanceof Type); } this.feedbackMessageService.addFeedbackMessage(new Message("The connection has been moved to a new owner " + newContainer.getQualifiedName(), MessageLevel.INFO)); } }); // Recompute both target and source chain - List endFeatureMemberships = connectorAsUsage.getOwnedFeatureMembership().stream() + List endFeatureMemberships = connector.getOwnedFeatureMembership().stream() .filter(EndFeatureMembership.class::isInstance) .map(EndFeatureMembership.class::cast) .toList(); - connectorAsUsage.getOwnedRelationship().removeAll(endFeatureMemberships); + connector.getOwnedRelationship().removeAll(endFeatureMemberships); + + Element sourceContainer = null; + Element newTargetContainer = null; + + if (sourceNode != null && sourceNode.isBorderNode()) { + sourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagram).orElse(null); + } else { + sourceContainer = source.getOwner(); + } + if (targetNode != null && targetNode.isBorderNode()) { + newTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagram).orElse(null); + } else { + newTargetContainer = newTarget.getOwner(); + } + + this.metamodelMutationElementService.setConnectorEnds(connector, source, newTarget, sourceContainer, newTargetContainer, connector.getOwner()); - this.metamodelMutationElementService.setConnectorEnds(connectorAsUsage, source, newTarget, connectorAsUsage.getOwner()); - return connectorAsUsage; + return connector; } /** @@ -660,8 +692,23 @@ public SatisfyRequirementUsage reconnectSatisfyRequirementTarget(SatisfyRequirem * @return a new {@link BindingConnectorAsUsage} */ public BindingConnectorAsUsage createBindingConnectorAsUsage(Feature source, Feature target, Node sourceNode, Node targetNode, IEditingContext editingContext, DiagramContext diagramContext) { - return this.getConnectorAsUsageContainer(sourceNode, targetNode, source, target, editingContext, diagramContext.diagram()) - .map(container -> this.metamodelMutationElementService.createBindingConnectorAsUsage(source, target, container)).orElseGet(() -> { + final Element edgeSourceContainer; + final Element edgeTargetContainer; + + if (sourceNode != null) { + edgeSourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeSourceContainer = null; + } + if (targetNode != null) { + edgeTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeTargetContainer = null; + } + + return this.getConnectorContainer(sourceNode, targetNode, source, target, editingContext, diagramContext.diagram()) + .map(connectorContainer -> this.metamodelMutationElementService.createBindingConnectorAsUsage(source, target, edgeSourceContainer, edgeTargetContainer, connectorContainer)) + .orElseGet(() -> { this.feedbackMessageService.addFeedbackMessage( new Message( MessageFormat.format("Unable to find a suitable owner for this BindingConnector in {0} containment tree.", source.getQualifiedName()), @@ -688,8 +735,22 @@ public BindingConnectorAsUsage createBindingConnectorAsUsage(Feature source, Fea * @return a new {@link FlowUsage} */ public FlowUsage createFlowUsage(Feature source, Feature target, Node sourceNode, Node targetNode, IEditingContext editingContext, DiagramContext diagramContext) { - return this.getConnectorAsUsageContainer(sourceNode, targetNode, source, target, editingContext, diagramContext.diagram()) - .map(flowContainer -> this.metamodelMutationElementService.createFlowUsage(source, target, flowContainer)).orElseGet(() -> { + final Element edgeSourceContainer; + final Element edgeTargetContainer; + + if (sourceNode != null) { + edgeSourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeSourceContainer = null; + } + if (targetNode != null) { + edgeTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeTargetContainer = null; + } + + return this.getConnectorContainer(sourceNode, targetNode, source, target, editingContext, diagramContext.diagram()) + .map(connectorContainer -> this.metamodelMutationElementService.createFlowUsage(source, target, edgeSourceContainer, edgeTargetContainer, connectorContainer)).orElseGet(() -> { this.feedbackMessageService.addFeedbackMessage( new Message( MessageFormat.format("Unable to find a suitable owner for this FlowUsage in {0} containment tree.", source.getQualifiedName()), @@ -716,8 +777,23 @@ public FlowUsage createFlowUsage(Feature source, Feature target, Node sourceNode * @return a new {@link InterfaceUsage} */ public InterfaceUsage createInterfaceUsage(PortUsage sourcePort, PortUsage targetPort, Node sourceNode, Node targetNode, IEditingContext editingContext, DiagramContext diagramContext) { - return this.getConnectorAsUsageContainer(sourceNode, targetNode, sourcePort, targetPort, editingContext, diagramContext.diagram()) - .map(interfaceContainer -> this.metamodelMutationElementService.createInterfaceUsage(sourcePort, targetPort, interfaceContainer)).orElseGet(() -> { + final Element edgeSourceContainer; + final Element edgeTargetContainer; + + if (sourceNode != null) { + edgeSourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeSourceContainer = null; + } + if (targetNode != null) { + edgeTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeTargetContainer = null; + } + + return this.getConnectorContainer(sourceNode, targetNode, sourcePort, targetPort, editingContext, diagramContext.diagram()) + .map(connectorContainer -> this.metamodelMutationElementService.createInterfaceUsage(sourcePort, targetPort, edgeSourceContainer, edgeTargetContainer, connectorContainer)) + .orElseGet(() -> { this.feedbackMessageService.addFeedbackMessage( new Message( MessageFormat.format("Unable to find a suitable owner for this InterfaceUsage in {0} containment tree.", sourcePort.getQualifiedName()), @@ -744,25 +820,39 @@ public InterfaceUsage createInterfaceUsage(PortUsage sourcePort, PortUsage targe * @return a new {@link ConnectionUsage} */ public ConnectionUsage createConnectionUsage(Usage connectionSource, Usage connectionTarget, Node sourceNode, Node targetNode, IEditingContext editingContext, DiagramContext diagramContext) { - return this.getConnectorAsUsageContainer(sourceNode, targetNode, connectionSource, connectionTarget, editingContext, diagramContext.diagram()) - .map(container -> this.metamodelMutationElementService.createConnectionUsage(connectionSource, connectionTarget, container)).orElseGet(() -> { + final Element edgeSourceContainer; + final Element edgeTargetContainer; + + if (sourceNode != null) { + edgeSourceContainer = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeSourceContainer = null; + } + if (targetNode != null) { + edgeTargetContainer = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagramContext.diagram()).orElse(null); + } else { + edgeTargetContainer = null; + } + + return this.getConnectorContainer(sourceNode, targetNode, connectionSource, connectionTarget, editingContext, diagramContext.diagram()) + .map(connectorContainer -> this.metamodelMutationElementService.createConnectionUsage(connectionSource, connectionTarget, edgeSourceContainer, edgeTargetContainer, connectorContainer)) + .orElseGet(() -> { this.feedbackMessageService.addFeedbackMessage( new Message( - "Unable to find a suitable owner for this ConnectionUsage in " + connectionSource.getQualifiedName(), + MessageFormat.format("Unable to find a suitable owner for this ConnectionUsage in {0} containment tree.", connectionSource.getQualifiedName()), MessageLevel.WARNING)); return null; }); } - private Optional getConnectorAsUsageContainer(Node sourceNode, Node targetNode, Element source, Element target, IEditingContext editingContext, - Diagram contextDiagram) { + private Optional getConnectorContainer(Node sourceNode, Node targetNode, Element source, Element target, IEditingContext editingContext, Diagram diagram) { Optional namespaceOwner = Optional.empty(); if (sourceNode != null && targetNode != null) { // First use the graphical node to be able to handle inherited elements that would not be displayed in their owner - Element sourceParentGraphicalElement = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, contextDiagram) + Element sourceParentGraphicalElement = this.diagramQueryElementService.getGraphicalSemanticParent(sourceNode, editingContext, diagram) .filter(e -> !(e instanceof ViewUsage)) .orElse(source); // If not found the node is located at the root of the diagram, use the semantic element alone - Element targetParentGraphicalElement = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, contextDiagram) + Element targetParentGraphicalElement = this.diagramQueryElementService.getGraphicalSemanticParent(targetNode, editingContext, diagram) .filter(e -> !(e instanceof ViewUsage)) .orElse(target); // If not found the node is located at the root of the diagram, use the semantic element alone if (sourceParentGraphicalElement != null && targetParentGraphicalElement != null) { diff --git a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramQueryElementService.java b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramQueryElementService.java index 6850ed686..401fc1fa1 100644 --- a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramQueryElementService.java +++ b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/DiagramQueryElementService.java @@ -32,7 +32,7 @@ import org.eclipse.sirius.components.view.emf.diagram.IDiagramIdProvider; import org.eclipse.sirius.components.view.emf.diagram.api.IViewDiagramDescriptionSearchService; import org.eclipse.syson.model.services.ModelQueryElementService; -import org.eclipse.syson.sysml.ConnectionUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; import org.eclipse.syson.sysml.ViewUsage; @@ -230,28 +230,32 @@ public Optional getGraphicalSemanticParent(Node node, IEditingContext e } /** - * Check if a {@link ConnectionUsage} edge should be displayed between the given source and target. + * Check if a {@link Connector} edge should be displayed between the given source and target. * - *

If the {@link ConnectionUsage} use feature chain to reference inherited elements, a special computation should check that the edge only connected inherited feature and not "real" objects. To - * do that, it will only select elements displayed "inside" the expected parent.

+ *

+ * If the {@link Connector} use feature chain to reference inherited elements, a special computation should check + * that the edge only connected inherited feature and not "real" objects. To do that, it will only select elements + * displayed "inside" the expected parent. + *

* - *

For example, for the feature chain "part1.port1" where "port1" is not directly owned by "part1", this method will only select target/source node displayed nested a "part1" node or at its - * border. + *

+ * For example, for the feature chain "part1.port1" where "port1" is not directly owned by "part1", this method will + * only select target/source node displayed nested a "part1" node or at its border. *

* * @param self - * the connection usage + * the {@link Connector} * @param sourceNode - * the graphical source element + * the graphical source element * @param targetNode - * the graphical target element + * the graphical target element * @param cacheRendering - * the current DiagramRenderingCache + * the current DiagramRenderingCache * @param editingContext - * the editing context + * the editing context * @return {@code true} if the edge should be rendered */ - public boolean shouldRenderConnectionUsageEdge(ConnectionUsage self, org.eclipse.sirius.components.representations.Element sourceNode, + public boolean shouldRenderConnectorEdge(Connector self, org.eclipse.sirius.components.representations.Element sourceNode, org.eclipse.sirius.components.representations.Element targetNode, DiagramRenderingCache cacheRendering, IEditingContext editingContext) { Feature sourceFeature = self.getSourceFeature(); if (this.isValidConnectionEnd(sourceFeature, sourceNode, cacheRendering, editingContext)) { diff --git a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramMutationAQLService.java b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramMutationAQLService.java index 0ecf2db19..260f75473 100644 --- a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramMutationAQLService.java +++ b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramMutationAQLService.java @@ -27,7 +27,7 @@ import org.eclipse.syson.diagram.services.DiagramMutationLabelService; import org.eclipse.syson.sysml.BindingConnectorAsUsage; import org.eclipse.syson.sysml.ConnectionUsage; -import org.eclipse.syson.sysml.ConnectorAsUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; import org.eclipse.syson.sysml.FlowUsage; @@ -226,19 +226,19 @@ public Element viewNodeAs(Element element, String newViewDefinition, IEditingCon } /** - * {@link DiagramMutationElementService#reconnectSource(ConnectorAsUsage, Feature, Node, Node, IEditingContext, Diagram)}. + * {@link DiagramMutationElementService#reconnectSource(Connector, Feature, Node, Node, IEditingContext, Diagram)}. */ - public ConnectorAsUsage reconnectSource(ConnectorAsUsage bind, Feature newSource, Node newSourceNode, Node targetNode, IEditingContext editingContext, + public Connector reconnectSource(Connector connector, Feature newSource, Node newSourceNode, Node targetNode, IEditingContext editingContext, Diagram diagram) { - return this.diagramMutationElementService.reconnectSource(bind, newSource, newSourceNode, targetNode, editingContext, diagram); + return this.diagramMutationElementService.reconnectSource(connector, newSource, newSourceNode, targetNode, editingContext, diagram); } /** - * {@link DiagramMutationElementService#reconnectTarget(ConnectorAsUsage, Feature, Node, Node, IEditingContext, Diagram)}. + * {@link DiagramMutationElementService#reconnectTarget(Connector, Feature, Node, Node, IEditingContext, Diagram)}. */ - public ConnectorAsUsage reconnectTarget(ConnectorAsUsage bind, Feature newTarget, Node sourceNode, Node newTargetNode, IEditingContext editingContext, + public Connector reconnectTarget(Connector connector, Feature newTarget, Node sourceNode, Node newTargetNode, IEditingContext editingContext, Diagram diagram) { - return this.diagramMutationElementService.reconnectTarget(bind, newTarget, sourceNode, newTargetNode, editingContext, diagram); + return this.diagramMutationElementService.reconnectTarget(connector, newTarget, sourceNode, newTargetNode, editingContext, diagram); } diff --git a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramQueryAQLService.java b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramQueryAQLService.java index f1404fc36..eb7f31841 100644 --- a/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramQueryAQLService.java +++ b/backend/services/syson-diagram-services/src/main/java/org/eclipse/syson/diagram/services/aql/DiagramQueryAQLService.java @@ -21,7 +21,7 @@ import org.eclipse.syson.diagram.services.DiagramQueryElementService; import org.eclipse.syson.diagram.services.DiagramQueryLabelService; import org.eclipse.syson.sysml.Comment; -import org.eclipse.syson.sysml.ConnectionUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Dependency; import org.eclipse.syson.sysml.Documentation; import org.eclipse.syson.sysml.Element; @@ -161,10 +161,10 @@ public boolean isDiagramEmpty(IEditingContext editingContext, DiagramContext dia /** * - * {@link DiagramQueryElementService#shouldRenderConnectionUsageEdge(ConnectionUsage, org.eclipse.sirius.components.representations.Element, org.eclipse.sirius.components.representations.Element, DiagramRenderingCache, IEditingContext)}. + * {@link DiagramQueryElementService#shouldRenderConnectorEdge(Connector, org.eclipse.sirius.components.representations.Element, org.eclipse.sirius.components.representations.Element, DiagramRenderingCache, IEditingContext)}. */ - public boolean shouldRenderConnectionUsageEdge(ConnectionUsage connectionUsage, org.eclipse.sirius.components.representations.Element sourceNode, + public boolean shouldRenderConnectorEdge(Connector connector, org.eclipse.sirius.components.representations.Element sourceNode, org.eclipse.sirius.components.representations.Element targetNode, DiagramRenderingCache cache, IEditingContext editingContext) { - return this.diagramQueryElementService.shouldRenderConnectionUsageEdge(connectionUsage, sourceNode, targetNode, cache, editingContext); + return this.diagramQueryElementService.shouldRenderConnectorEdge(connector, sourceNode, targetNode, cache, editingContext); } } diff --git a/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/ModelMutationElementService.java b/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/ModelMutationElementService.java index b39f9495a..85a7ae8f1 100644 --- a/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/ModelMutationElementService.java +++ b/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/ModelMutationElementService.java @@ -104,7 +104,7 @@ public Element createPartUsageAndBindingConnectorAsUsage(PartUsage self) { this.metamodelMutationElementService.addChildInParent(newPartUsage, newPartUsagePort); this.metamodelMutationElementService.initialize(newPartUsagePort); // create binding connector as usage edge between both new ports - this.metamodelMutationElementService.createBindingConnectorAsUsage(newSelfPort, newPartUsagePort, parentNamespace); + this.metamodelMutationElementService.createBindingConnectorAsUsage(newSelfPort, newPartUsagePort, self, newPartUsage, parentNamespace); return newPartUsage; } return self; @@ -134,7 +134,7 @@ public PartUsage createPartUsageAndFlowConnection(PartUsage self) { this.metamodelMutationElementService.addChildInParent(newPartUsage, newPartUsagePort); this.metamodelMutationElementService.initialize(newPartUsagePort); // create flow connection edge between both new ports - this.metamodelMutationElementService.createFlowUsage(newSelfPort, newPartUsagePort, parentNamespace); + this.metamodelMutationElementService.createFlowUsage(newSelfPort, newPartUsagePort, self, newPartUsage, parentNamespace); return newPartUsage; } return self; @@ -164,7 +164,7 @@ public PartUsage createPartUsageAndInterface(PartUsage self) { this.metamodelMutationElementService.addChildInParent(newPartUsage, newPartUsagePort); this.metamodelMutationElementService.initialize(newPartUsagePort); // create interface edge between both new ports - this.metamodelMutationElementService.createInterfaceUsage(newSelfPort, newPartUsagePort, parentNamespace); + this.metamodelMutationElementService.createInterfaceUsage(newSelfPort, newPartUsagePort, self, newPartUsage, parentNamespace); return newPartUsage; } return self; diff --git a/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/aql/ModelQueryAQLService.java b/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/aql/ModelQueryAQLService.java index 6548b74ec..dc847ecc7 100644 --- a/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/aql/ModelQueryAQLService.java +++ b/backend/services/syson-model-services/src/main/java/org/eclipse/syson/model/services/aql/ModelQueryAQLService.java @@ -14,6 +14,7 @@ import java.util.List; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.ConnectorAsUsage; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; @@ -48,16 +49,16 @@ public boolean isSubject(Element element) { } /** - * {@link MetamodelQueryElementService#getTarget(ConnectorAsUsage)}. + * {@link MetamodelQueryElementService#getConnectorSource(Connector)}. */ - public List getTarget(ConnectorAsUsage connectorAsUsage) { - return this.metamodelQueryElementService.getTarget(connectorAsUsage); + public Feature getConnectorSource(Connector connector) { + return this.metamodelQueryElementService.getConnectorSource(connector); } /** - * {@link MetamodelQueryElementService#getSource(ConnectorAsUsage)}. + * {@link MetamodelQueryElementService#getConnectorTarget(Connector)}. */ - public Feature getSource(ConnectorAsUsage connectorAsUsage) { - return this.metamodelQueryElementService.getSource(connectorAsUsage); + public List getConnectorTarget(ConnectorAsUsage connector) { + return this.metamodelQueryElementService.getConnectorTarget(connector); } } diff --git a/backend/services/syson-model-services/src/test/java/org/eclipse/syson/model/services/ModelMutationElementServiceTests.java b/backend/services/syson-model-services/src/test/java/org/eclipse/syson/model/services/ModelMutationElementServiceTests.java index 8576010dc..90a6081f7 100644 --- a/backend/services/syson-model-services/src/test/java/org/eclipse/syson/model/services/ModelMutationElementServiceTests.java +++ b/backend/services/syson-model-services/src/test/java/org/eclipse/syson/model/services/ModelMutationElementServiceTests.java @@ -156,7 +156,7 @@ public void checkCreatePartUsageAndFlowConnection() { assertThat(bindings) .hasSize(1) - .allMatch(bindingConnectorAsUsage -> this.metamodelElementQueryService.getSource(bindingConnectorAsUsage) == newPort) - .allMatch(bindingConnectorAsUsage -> this.metamodelElementQueryService.getTarget(bindingConnectorAsUsage).get(0) == targetPort); + .allMatch(bindingConnectorAsUsage -> this.metamodelElementQueryService.getConnectorSource(bindingConnectorAsUsage) == newPort) + .allMatch(bindingConnectorAsUsage -> this.metamodelElementQueryService.getConnectorTarget(bindingConnectorAsUsage).get(0) == targetPort); } } diff --git a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputer.java b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputer.java index 11b2ba38c..ff5801cbe 100644 --- a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputer.java +++ b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputer.java @@ -20,9 +20,9 @@ import java.util.Optional; import java.util.Set; -import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.EStructuralFeature.Setting; +import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; import org.eclipse.syson.sysml.FeatureMembership; import org.eclipse.syson.sysml.FeatureTyping; @@ -32,7 +32,7 @@ import org.eclipse.syson.sysml.helper.EMFUtils; /** - * Object in charge of computing a chain of feature to access a {@link Feature} from one {@link Type}. + * Object in charge of computing a chain of feature to access a {@link Feature} from one {@link Element}. * * @author Arthur Daussy */ @@ -42,13 +42,19 @@ public class FeatureChainComputer { * Find the shortest path from the given source to the given feature. * * @param source - * a Type - * @param target - * a Feature + * a {@link Element} + * @param end + * a {@link Feature} + * @param endContainer + * the semantic element corresponding to the graphical container of the end * @return an {@link Optional} list of feature (including the target) */ - public Optional> computeShortestPath(Type source, Feature target) { - List> chains = this.computeChains(source, target, new HashSet<>()); + public Optional> computeShortestPath(Element source, Feature end, Element endContainer) { + List> chains = this.computeChains(source, end, new HashSet<>()); + // filter the chains to only keep the ones containing the endContainer + if (endContainer != null) { + chains = chains.stream().filter(chain -> chain.contains(endContainer)).toList(); + } return chains.stream().min(Comparator.comparing(Collection::size)); } @@ -56,65 +62,67 @@ public Optional> computeShortestPath(Type source, Feature target) * Compute all feature paths from the given source to the given feature. * * @param source - * a {@link Type} - * @param target - * a Feature. + * a {@link Element} + * @param end + * a {@link Feature}. * @return list of all path */ - public List> computeAllPath(Type source, Feature target) { - return this.computeChains(source, target, new HashSet<>()); + public List> computeAllPath(Type source, Feature end) { + return this.computeChains(source, end, new HashSet<>()); } - private List> computeChains(Type source, Feature target, Set encounteredFeature0) { + private List> computeChains(Element source, Feature end, Set alreadyEncounteredFeatures) { List> result = new ArrayList<>(); - Set encounteredFeature = new HashSet<>(encounteredFeature0); - encounteredFeature.add(target); - - if (target != null) { + Set encounteredFeature = new HashSet<>(alreadyEncounteredFeatures); + encounteredFeature.add(end); - if (target.getOwningType() == null) { + if (end != null) { + if (end.getOwningType() == null) { // The target is a feature directly available in the root namespace List features = new ArrayList<>(); - features.add(target); + features.add(end); result.add(features); } - EList sourceFeatures = source.getFeature(); + final List sourceFeatures; + if (source instanceof Type sourceAsType) { + sourceFeatures = sourceAsType.getFeature(); + } else { + sourceFeatures = new ArrayList<>(); + } - for (Feature accessingFeature : this.computeAccessingFeature(target, encounteredFeature)) { + for (Feature accessingFeature : this.computeAccessingFeature(end, encounteredFeature)) { if (accessingFeature == source) { List features = new ArrayList<>(); - features.add(target); + features.add(end); result.add(features); } else if (sourceFeatures.contains(accessingFeature)) { List features = new ArrayList<>(); features.add(accessingFeature); - features.add(target); + features.add(end); result.add(features); } else { List> subchains = this.computeChains(source, accessingFeature, encounteredFeature); for (List subChainfeature : subchains) { if (!subChainfeature.isEmpty()) { List features = new ArrayList<>(subChainfeature); - features.add(target); + features.add(end); result.add(features); } } } } - } return result; } - private List computeAccessingFeature(Feature target, Set encounteredFeature) { - - Collection inverseReferences = EMFUtils.getInverse(target); + private List computeAccessingFeature(Feature end, Set encounteredFeatures) { + Collection inverseReferences = EMFUtils.getInverse(end); List accessingFeatures = new ArrayList<>(); for (Setting s : inverseReferences) { List accessFeatures = this.collectTargettingFeatures(s); for (var af : accessFeatures) { - if (!encounteredFeature.contains(af) && !accessingFeatures.contains(af)) { + if (!encounteredFeatures.contains(af) && !accessingFeatures.contains(af)) { accessingFeatures.add(af); } } @@ -150,7 +158,6 @@ private void collectTypingFeatures(List accessFeatures, Type owningType if (type instanceof Feature feature) { accessFeatures.add(feature); } - } } @@ -162,7 +169,6 @@ private void collectAllSubTypes(Type superType, List result) { this.collectAllSubTypes(specific, result); } } - } private List computeSpecific(Type superType) { @@ -172,7 +178,4 @@ private List computeSpecific(Type superType) { .map(s -> ((Specialization) s.getEObject()).getSpecific()) .toList(); } - - - } diff --git a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelMutationElementService.java b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelMutationElementService.java index 88da71c96..06b8ce815 100644 --- a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelMutationElementService.java +++ b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelMutationElementService.java @@ -18,13 +18,13 @@ import org.eclipse.emf.ecore.EStructuralFeature; import org.eclipse.syson.sysml.BindingConnectorAsUsage; import org.eclipse.syson.sysml.ConnectionUsage; -import org.eclipse.syson.sysml.ConnectorAsUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Documentation; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.EndFeatureMembership; import org.eclipse.syson.sysml.Feature; import org.eclipse.syson.sysml.FeatureChaining; -import org.eclipse.syson.sysml.FeatureMembership; +import org.eclipse.syson.sysml.Flow; import org.eclipse.syson.sysml.FlowEnd; import org.eclipse.syson.sysml.FlowUsage; import org.eclipse.syson.sysml.InterfaceUsage; @@ -73,37 +73,36 @@ public Membership createMembership(Element element) { } /** - * Sets the connector ends of a {@link ConnectorAsUsage}. + * Sets the connector ends of a {@link Connector}. * - * @param connectorAsUsage - * The connector to configure + * @param connector + * the {@link Connector} to configure * @param source - * the source of the connector + * the source of the {@link Connector} * @param target - * the target of the connector - * @param connectorContainer - * the container of the connector. If the container is a type will intend to compute a feature chain between the container and the ends. + * the target of the {@link Connector} + * @param sourceContainer + * the semantic element corresponding to the graphical container of the source + * @param targetContainer + * the semantic element corresponding to the graphical container of the target + * @param newConnectorContainer + * the container of the Connector. If the container is a type, it will intend to compute a feature chain + * between the container and the ends. */ - public void setConnectorEnds(ConnectorAsUsage connectorAsUsage, Feature source, Feature target, Element connectorContainer) { - if (connectorAsUsage instanceof FlowUsage flowUsage) { - flowUsage.getOwnedRelationship().add(this.createFlowConnectionEnd(source)); - flowUsage.getOwnedRelationship().add(this.createFlowConnectionEnd(target)); - } else { - this.addConnectorEnd(connectorAsUsage, source, connectorContainer); - this.addConnectorEnd(connectorAsUsage, target, connectorContainer); - } - + public void setConnectorEnds(Connector connector, Feature source, Feature target, Element sourceContainer, Element targetContainer, Element newConnectorContainer) { + this.addConnectorEnd(connector, source, sourceContainer, newConnectorContainer); + this.addConnectorEnd(connector, target, targetContainer, newConnectorContainer); } /** - * Create a new EndFeatureMembership to be used as {@link FlowUsage} end. + * Create a new {@link EndFeatureMembership} to be used as {@link FlowUsage} end. * * @param targetedFeature - * the targeted feature (either the source or target of the flow) + * the targeted feature (either the source or target of the flow) * @return the new EndFeatureMembership + * @technical-debt This method should be deleted at some point. We still need it public because of the old + * architecture relying on ViewCreateService. */ - // This method should be private at some point. - // We still need it public because of the old architecture relying on ViewCreateService public EndFeatureMembership createFlowConnectionEnd(Feature targetedFeature) { EndFeatureMembership featureMembership = SysmlFactory.eINSTANCE.createEndFeatureMembership(); @@ -133,112 +132,92 @@ public EndFeatureMembership createFlowConnectionEnd(Feature targetedFeature) { } /** - * Creates a new {@link FlowUsage} in the given container. + * Creates a new {@link BindingConnectorAsUsage} in the given container. * * @param source - * the source the flow + * the source of the binding * @param target - * the target the flow - * @param flowContainer - * the container of the new {@link FlowUsage} - * @return a new {@link FlowUsage} + * the target of the binding + * @param sourceContainer + * the semantic element corresponding to the graphical container of the source + * @param targetContainer + * the semantic element corresponding to the graphical container of the target + * @param newConnectionContainer + * the container of the new {@link BindingConnectorAsUsage} + * @return a new {@link BindingConnectorAsUsage} */ - public FlowUsage createFlowUsage(Feature source, Feature target, Namespace flowContainer) { - FeatureMembership featureMembership = SysmlFactory.eINSTANCE.createFeatureMembership(); - flowContainer.getOwnedRelationship().add(featureMembership); - - FlowUsage flowUsage = SysmlFactory.eINSTANCE.createFlowUsage(); - this.addChildInParent(flowContainer, flowUsage); - this.elementInitializerSwitch.doSwitch(flowUsage); - - flowUsage.getOwnedRelationship().add(this.createFlowConnectionEnd(source)); - flowUsage.getOwnedRelationship().add(this.createFlowConnectionEnd(target)); - return flowUsage; + public BindingConnectorAsUsage createBindingConnectorAsUsage(Feature source, Feature target, Element sourceContainer, Element targetContainer, Namespace newConnectionContainer) { + return (BindingConnectorAsUsage) this.createConnector(source, target, sourceContainer, targetContainer, newConnectionContainer, SysmlFactory.eINSTANCE.createBindingConnectorAsUsage()); } /** - * Creates a new {@link InterfaceUsage} in the given container. + * Creates a new {@link ConnectionUsage} in the given container. * - * @param sourcePort - * the source the interface - * @param targetPort - * the target the interface - * @param interfaceContainer - * the container of the new interface - * @return a new {@link InterfaceUsage} + * @param source + * the source of the connection + * @param target + * the target of the connection + * @param sourceContainer + * the semantic element corresponding to the graphical container of the source + * @param targetContainer + * the semantic element corresponding to the graphical container of the target + * @param newConnectionContainer + * the container of the new {@link ConnectionUsage} + * @return a new {@link ConnectionUsage} */ - public InterfaceUsage createInterfaceUsage(PortUsage sourcePort, PortUsage targetPort, Namespace interfaceContainer) { - InterfaceUsage interfaceUsage = SysmlFactory.eINSTANCE.createInterfaceUsage(); - this.addChildInParent(interfaceContainer, interfaceUsage); - this.elementInitializerSwitch.doSwitch(interfaceUsage); - // Edges should have an empty default name. This is not the case when using the initializer, because - // InterfaceUsage can be a node, which requires a default name. - interfaceUsage.setDeclaredName(""); - - EndFeatureMembership sourceEndFeatureMembership = SysmlFactory.eINSTANCE.createEndFeatureMembership(); - interfaceUsage.getOwnedRelationship().add(sourceEndFeatureMembership); - Feature sourceFeature = SysmlFactory.eINSTANCE.createFeature(); - sourceFeature.setIsEnd(true); - sourceEndFeatureMembership.getOwnedRelatedElement().add(sourceFeature); - this.elementInitializerSwitch.doSwitch(sourceFeature); - ReferenceSubsetting sourceReferenceSubsetting = SysmlFactory.eINSTANCE.createReferenceSubsetting(); - sourceFeature.getOwnedRelationship().add(sourceReferenceSubsetting); - this.elementInitializerSwitch.doSwitch(sourceReferenceSubsetting); - sourceReferenceSubsetting.setReferencedFeature(sourcePort); - - EndFeatureMembership targetEndFeatureMembership = SysmlFactory.eINSTANCE.createEndFeatureMembership(); - interfaceUsage.getOwnedRelationship().add(targetEndFeatureMembership); - Feature targetFeature = SysmlFactory.eINSTANCE.createFeature(); - targetFeature.setIsEnd(true); - targetEndFeatureMembership.getOwnedRelatedElement().add(targetFeature); - this.elementInitializerSwitch.doSwitch(targetFeature); - ReferenceSubsetting targetReferenceSubsetting = SysmlFactory.eINSTANCE.createReferenceSubsetting(); - targetFeature.getOwnedRelationship().add(targetReferenceSubsetting); - this.elementInitializerSwitch.doSwitch(targetReferenceSubsetting); - targetReferenceSubsetting.setReferencedFeature(targetPort); - - return interfaceUsage; + public ConnectionUsage createConnectionUsage(Feature source, Feature target, Element sourceContainer, Element targetContainer, Namespace newConnectionContainer) { + return (ConnectionUsage) this.createConnector(source, target, sourceContainer, targetContainer, newConnectionContainer, SysmlFactory.eINSTANCE.createConnectionUsage()); } /** - * Creates a new {@link BindingConnectorAsUsage} in the given container. + * Creates a new {@link FlowUsage} in the given container. * * @param source - * the source the binding + * the source of the flow * @param target - * the target the binding - * @param container - * the container of the new binding - * @return a new {@link BindingConnectorAsUsage} + * the target of the flow + * @param sourceContainer + * the semantic element corresponding to the graphical container of the source + * @param targetContainer + * the semantic element corresponding to the graphical container of the target + * @param newConnectionContainer + * the container of the new {@link FlowUsage} + * @return a new {@link FlowUsage} */ - public BindingConnectorAsUsage createBindingConnectorAsUsage(Feature source, Feature target, Namespace container) { - return (BindingConnectorAsUsage) this.createConnectorAsUsage(source, target, container, SysmlFactory.eINSTANCE.createBindingConnectorAsUsage()); + public FlowUsage createFlowUsage(Feature source, Feature target, Element sourceContainer, Element targetContainer, Namespace newConnectionContainer) { + return (FlowUsage) this.createConnector(source, target, sourceContainer, targetContainer, newConnectionContainer, SysmlFactory.eINSTANCE.createFlowUsage()); } /** - * Creates a new {@link ConnectionUsage} in the given container. + * Creates a new {@link InterfaceUsage} in the given container. * - * @param source - * the source the connection - * @param target - * the target the connection - * @param container - * the container of the new connection - * @return a new {@link ConnectionUsage} + * @param sourcePort + * the source of the interface + * @param targetPort + * the target of the interface + * @param sourceContainer + * the semantic element corresponding to the graphical container of the source + * @param targetContainer + * the semantic element corresponding to the graphical container of the target + * @param interfaceContainer + * the container of the new {@link InterfaceUsage} + * @return a new {@link InterfaceUsage} */ - public ConnectionUsage createConnectionUsage(Feature source, Feature target, Namespace container) { - return (ConnectionUsage) this.createConnectorAsUsage(source, target, container, SysmlFactory.eINSTANCE.createConnectionUsage()); + public InterfaceUsage createInterfaceUsage(PortUsage source, PortUsage target, Element sourceContainer, Element targetContainer, Namespace newConnectionContainer) { + return (InterfaceUsage) this.createConnector(source, target, sourceContainer, targetContainer, newConnectionContainer, SysmlFactory.eINSTANCE.createInterfaceUsage()); } /** * Initializes a new SysML {@link Element}. * - *

The given element is expected to be added in its container before being given to this method.

+ *

+ * The given element is expected to be added in its container before being given to this method. + *

* * @param toInit - * an {@link Element} + * an {@link Element} * @param - * the type of the {@link Element} + * the type of the {@link Element} * @return the given {@link Element} for convenience. */ public T initialize(T toInit) { @@ -300,27 +279,31 @@ public Documentation createObjectiveDocumentation(Element element, String refere return null; } - private Feature addConnectorEnd(ConnectorAsUsage connectorAsUsage, Feature end, Element connectorContainer) { + private Feature addConnectorEnd(Connector connector, Feature end, Element endContainer, Element connectorContainer) { List sourceFeaturePath = List.of(); - // If the container is a type try to compute the feature chain to access the feature ends from the container - if (connectorContainer instanceof Type containerType) { - // This code will not work to connect inherited non redefined feature. In such case we should - FeatureChainComputer cmp = new FeatureChainComputer(); - sourceFeaturePath = cmp.computeShortestPath(containerType, end).orElse(List.of()); + // This code will not work to connect inherited non redefined feature. + FeatureChainComputer cmp = new FeatureChainComputer(); + sourceFeaturePath = cmp.computeShortestPath(connectorContainer, end, endContainer).orElse(List.of()); + + EndFeatureMembership endFeatureMembership = SysmlFactory.eINSTANCE.createEndFeatureMembership(); + connector.getOwnedRelationship().add(endFeatureMembership); + + final Feature endFeature; + if (connector instanceof Flow) { + endFeature = SysmlFactory.eINSTANCE.createFlowEnd(); + } else if (connector instanceof InterfaceUsage) { + endFeature = SysmlFactory.eINSTANCE.createPortUsage(); + } else { + endFeature = SysmlFactory.eINSTANCE.createReferenceUsage(); } + endFeature.setIsEnd(true); - EndFeatureMembership sourceEndFeatureMembership = SysmlFactory.eINSTANCE.createEndFeatureMembership(); - connectorAsUsage.getOwnedRelationship().add(sourceEndFeatureMembership); - Feature sourceFeature = SysmlFactory.eINSTANCE.createReferenceUsage(); - sourceFeature.setIsEnd(true); - - - sourceEndFeatureMembership.getOwnedRelatedElement().add(sourceFeature); - this.elementInitializerSwitch.doSwitch(sourceFeature); + endFeatureMembership.getOwnedRelatedElement().add(endFeature); + this.elementInitializerSwitch.doSwitch(endFeature); // For this use case, the generated name is not required - sourceFeature.setDeclaredName(null); + endFeature.setDeclaredName(null); ReferenceSubsetting sourceReferenceSubsetting = SysmlFactory.eINSTANCE.createReferenceSubsetting(); - sourceFeature.getOwnedRelationship().add(sourceReferenceSubsetting); + endFeature.getOwnedRelationship().add(sourceReferenceSubsetting); this.elementInitializerSwitch.doSwitch(sourceReferenceSubsetting); if (sourceFeaturePath.isEmpty() || sourceFeaturePath.size() == 1) { // If no path found create a direct reference. The model may not be valid but keep track of the desire @@ -337,16 +320,33 @@ private Feature addConnectorEnd(ConnectorAsUsage connectorAsUsage, Feature end, sourceReferenceSubsetting.setReferencedFeature(sourceFeatureChain); sourceReferenceSubsetting.getOwnedRelatedElement().add(sourceFeatureChain); } - return sourceFeature; + + if (connector instanceof Flow) { + var secondEndFeatureMembership = SysmlFactory.eINSTANCE.createFeatureMembership(); + end.getOwnedRelationship().add(secondEndFeatureMembership); + var endReferenceUsage = SysmlFactory.eINSTANCE.createReferenceUsage(); + secondEndFeatureMembership.getOwnedRelatedElement().add(endReferenceUsage); + this.elementInitializerSwitch.doSwitch(endReferenceUsage); + + var flowFeatureMembership = SysmlFactory.eINSTANCE.createFeatureMembership(); + endFeature.getOwnedRelationship().add(flowFeatureMembership); + var flowReferenceUsage = SysmlFactory.eINSTANCE.createReferenceUsage(); + flowFeatureMembership.getOwnedRelatedElement().add(flowReferenceUsage); + this.elementInitializerSwitch.doSwitch(flowReferenceUsage); + flowReferenceUsage.setDeclaredName(null); + var redefinition = SysmlFactory.eINSTANCE.createRedefinition(); + flowReferenceUsage.getOwnedRelationship().add(redefinition); + redefinition.setRedefiningFeature(connector); + redefinition.setRedefinedFeature(end); + this.elementInitializerSwitch.doSwitch(redefinition); + } + return endFeature; } - private ConnectorAsUsage createConnectorAsUsage(Feature source, Feature target, Namespace owner, ConnectorAsUsage connectorInstance) { - this.addChildInParent(owner, connectorInstance); + private Connector createConnector(Feature source, Feature target, Element sourceContainer, Element targetContainer, Namespace newConnectorContainer, Connector connectorInstance) { + this.addChildInParent(newConnectorContainer, connectorInstance); this.elementInitializerSwitch.doSwitch(connectorInstance); - - this.setConnectorEnds(connectorInstance, source, target, owner); - + this.setConnectorEnds(connectorInstance, source, target, sourceContainer, targetContainer, newConnectorContainer); return connectorInstance; } - } diff --git a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelQueryElementService.java b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelQueryElementService.java index 197f86685..b08fee179 100644 --- a/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelQueryElementService.java +++ b/backend/services/syson-sysml-metamodel-services/src/main/java/org/eclipse/syson/sysml/metamodel/services/MetamodelQueryElementService.java @@ -19,7 +19,7 @@ import java.util.function.Predicate; import org.eclipse.syson.sysml.ActorMembership; -import org.eclipse.syson.sysml.ConnectorAsUsage; +import org.eclipse.syson.sysml.Connector; import org.eclipse.syson.sysml.Element; import org.eclipse.syson.sysml.Feature; import org.eclipse.syson.sysml.PartUsage; @@ -34,7 +34,7 @@ public class MetamodelQueryElementService { /** - * Returns {@code true} if the provided {@code element} is an actor, {@code false} otherwise. + * Return {@code true} if the provided {@code element} is an actor, {@code false} otherwise. *

* An actor (typically of a UseCase or Requirement) is a kind of parameter stored in an {@link ActorMembership}. *

@@ -48,7 +48,7 @@ public boolean isActor(Element element) { } /** - * Returns {@code true} if the provided {@code element} is a subject, {@code false} otherwise. + * Return {@code true} if the provided {@code element} is a subject, {@code false} otherwise. *

* A subject (typically of a UseCase or Requirement) is a kind of parameter stored in an {@link SubjectMembership}. *

@@ -62,28 +62,14 @@ public boolean isSubject(Element element) { } /** - * Gets the target of a {@link ConnectorAsUsage}. + * Get the source of a {@link Connector}. * * @param connector - * a {@link ConnectorAsUsage} - * @return a list of targets - */ - public List getTarget(ConnectorAsUsage connector) { - return connector.getTargetFeature().stream() - .filter(Objects::nonNull) - .map(Feature::getFeatureTarget) - .toList(); - } - - /** - * Gets the source of a {@link ConnectorAsUsage}. - * - * @param connectorAsUsage - * a {@link ConnectorAsUsage} + * a {@link Connector} * @return the source feature */ - public Feature getSource(ConnectorAsUsage connectorAsUsage) { - Feature sourceFeature = connectorAsUsage.getSourceFeature(); + public Feature getConnectorSource(Connector connector) { + Feature sourceFeature = connector.getSourceFeature(); if (sourceFeature != null) { return sourceFeature.getFeatureTarget(); } @@ -91,12 +77,26 @@ public Feature getSource(ConnectorAsUsage connectorAsUsage) { } /** - * Gets the closest common owner for both given {@link Element}. + * Get the targets of a {@link Connector}. + * + * @param connector + * a {@link Connector} + * @return a list of targets + */ + public List getConnectorTarget(Connector connector) { + return connector.getTargetFeature().stream() + .filter(Objects::nonNull) + .map(Feature::getFeatureTarget) + .toList(); + } + + /** + * Get the closest common owner for both given {@link Element}. * * @param e1 - * an Element + * an Element * @param e2 - * another Element + * another Element * @return an optional common owning ancestor with the expected type */ public Optional getCommonOwnerAncestor(Element e1, Element e2, Class expectedType, Predicate test) { diff --git a/backend/services/syson-sysml-metamodel-services/src/test/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputerTest.java b/backend/services/syson-sysml-metamodel-services/src/test/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputerTest.java index aedf366da..875668fc6 100644 --- a/backend/services/syson-sysml-metamodel-services/src/test/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputerTest.java +++ b/backend/services/syson-sysml-metamodel-services/src/test/java/org/eclipse/syson/sysml/metamodel/services/FeatureChainComputerTest.java @@ -108,7 +108,7 @@ public void checkAgainstInfiniteLoop() { } private Optional> computeShortestPath(Type source, Feature target) { - return new FeatureChainComputer().computeShortestPath(source, target); + return new FeatureChainComputer().computeShortestPath(source, target, null); } private List> computeAllPath(Type source, Feature target) { diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractBindingConnectorAsUsageEdgeDescriptionProvider.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractBindingConnectorAsUsageEdgeDescriptionProvider.java index 7a79d4afd..b67e49a80 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractBindingConnectorAsUsageEdgeDescriptionProvider.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractBindingConnectorAsUsageEdgeDescriptionProvider.java @@ -30,6 +30,7 @@ import org.eclipse.sirius.components.view.diagram.SynchronizationPolicy; import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.diagram.services.aql.DiagramQueryAQLService; +import org.eclipse.syson.model.services.aql.ModelQueryAQLService; import org.eclipse.syson.sysml.BindingConnectorAsUsage; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; @@ -83,15 +84,22 @@ public AbstractBindingConnectorAsUsageEdgeDescriptionProvider(IColorProvider col public EdgeDescription create() { String domainType = SysMLMetamodelHelper.buildQualifiedName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()); return this.diagramBuilderHelper.newEdgeDescription() + .centerLabelExpression("=") .domainType(domainType) .isDomainBasedEdge(true) - .centerLabelExpression("=") .name(this.getName()) + .preconditionExpression(ServiceMethod.of4(DiagramQueryAQLService::shouldRenderConnectorEdge) + .aqlSelf(org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.DiagramDescription.CACHE, + IEditingContext.EDITING_CONTEXT) + // Needs this to avoid instantiation on inheriting concept + + "and self.oclIsTypeOf(" + domainType + ")") .semanticCandidatesExpression("aql:self.getAllReachable(" + domainType + ")") - .sourceExpression("aql:self.getSource()") + .sourceExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorSource).aqlSelf()) .style(this.createEdgeStyle()) .synchronizationPolicy(SynchronizationPolicy.SYNCHRONIZED) - .targetExpression("aql:self.getTarget()") + .targetExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorTarget).aqlSelf()) .build(); } @@ -153,8 +161,8 @@ protected ChangeContextBuilder getTargetReconnectToolBody() { .expression(ServiceMethod.of5(DiagramMutationAQLService::reconnectTarget).aql( AQLConstants.EDGE_SEMANTIC_ELEMENT, AQLConstants.SEMANTIC_RECONNECTION_TARGET, - AQLConstants.RECONNECTION_TARGET_VIEW, AQLConstants.OTHER_END, + AQLConstants.RECONNECTION_TARGET_VIEW, IEditingContext.EDITING_CONTEXT, AQLConstants.DIAGRAM )); diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractFlowUsageEdgeDescriptionProvider.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractFlowUsageEdgeDescriptionProvider.java index 0c6991f95..32c73dc52 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractFlowUsageEdgeDescriptionProvider.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractFlowUsageEdgeDescriptionProvider.java @@ -14,6 +14,7 @@ import java.util.List; +import org.eclipse.sirius.components.core.api.IEditingContext; import org.eclipse.sirius.components.view.builder.IViewDiagramElementFinder; import org.eclipse.sirius.components.view.builder.generated.diagram.DiagramBuilders; import org.eclipse.sirius.components.view.builder.generated.view.ChangeContextBuilder; @@ -33,7 +34,6 @@ import org.eclipse.syson.sysml.FlowUsage; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; -import org.eclipse.syson.util.AQLUtils; import org.eclipse.syson.util.ServiceMethod; import org.eclipse.syson.util.SysMLMetamodelHelper; import org.eclipse.syson.util.ViewConstants; @@ -84,10 +84,17 @@ public AbstractFlowUsageEdgeDescriptionProvider(IColorProvider colorProvider) { public EdgeDescription create() { String domainType = SysMLMetamodelHelper.buildQualifiedName(SysmlPackage.eINSTANCE.getFlowUsage()); return this.diagramBuilderHelper.newEdgeDescription() + .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .domainType(domainType) .isDomainBasedEdge(true) - .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .name(this.getName()) + .preconditionExpression(ServiceMethod.of4(DiagramQueryAQLService::shouldRenderConnectorEdge) + .aqlSelf(org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.DiagramDescription.CACHE, + IEditingContext.EDITING_CONTEXT) + // Needs this to avoid instantiation on inheriting concept + + "and self.oclIsTypeOf(" + domainType + ")") .semanticCandidatesExpression(ServiceMethod.of1(UtilService::getAllReachable).aqlSelf(domainType)) .sourceExpression("aql:self.sourceOutputFeature.unwrapFeature()") .style(this.createEdgeStyle()) @@ -138,12 +145,24 @@ protected LabelEditTool getEdgeEditTool() { @Override protected ChangeContextBuilder getSourceReconnectToolBody() { return this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(AQLConstants.EDGE_SEMANTIC_ELEMENT, "reconnectSource", AQLConstants.SEMANTIC_RECONNECTION_TARGET)); + .expression(ServiceMethod.of5(DiagramMutationAQLService::reconnectSource).aql( + AQLConstants.EDGE_SEMANTIC_ELEMENT, + AQLConstants.SEMANTIC_RECONNECTION_TARGET, + AQLConstants.RECONNECTION_TARGET_VIEW, + AQLConstants.OTHER_END, + IEditingContext.EDITING_CONTEXT, + AQLConstants.DIAGRAM)); } @Override protected ChangeContextBuilder getTargetReconnectToolBody() { return this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(AQLConstants.EDGE_SEMANTIC_ELEMENT, "reconnectTarget", AQLConstants.SEMANTIC_RECONNECTION_TARGET)); + .expression(ServiceMethod.of5(DiagramMutationAQLService::reconnectTarget).aql( + AQLConstants.EDGE_SEMANTIC_ELEMENT, + AQLConstants.SEMANTIC_RECONNECTION_TARGET, + AQLConstants.OTHER_END, + AQLConstants.RECONNECTION_TARGET_VIEW, + IEditingContext.EDITING_CONTEXT, + AQLConstants.DIAGRAM)); } } diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractInterfaceUsageEdgeDescriptionProvider.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractInterfaceUsageEdgeDescriptionProvider.java index 87074bb8f..2ab85954a 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractInterfaceUsageEdgeDescriptionProvider.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractInterfaceUsageEdgeDescriptionProvider.java @@ -30,6 +30,7 @@ import org.eclipse.sirius.components.view.diagram.SynchronizationPolicy; import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.diagram.services.aql.DiagramQueryAQLService; +import org.eclipse.syson.model.services.aql.ModelQueryAQLService; import org.eclipse.syson.sysml.InterfaceUsage; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; @@ -83,15 +84,22 @@ public AbstractInterfaceUsageEdgeDescriptionProvider(IColorProvider colorProvide public EdgeDescription create() { String domainType = SysMLMetamodelHelper.buildQualifiedName(SysmlPackage.eINSTANCE.getInterfaceUsage()); return this.diagramBuilderHelper.newEdgeDescription() + .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .domainType(domainType) .isDomainBasedEdge(true) - .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .name(this.getName()) + .preconditionExpression(ServiceMethod.of4(DiagramQueryAQLService::shouldRenderConnectorEdge) + .aqlSelf(org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.DiagramDescription.CACHE, + IEditingContext.EDITING_CONTEXT) + // Needs this to avoid instantiation on inheriting concept + + "and self.oclIsTypeOf(" + domainType + ")") .semanticCandidatesExpression("aql:self.getAllReachable(" + domainType + ")") - .sourceExpression("aql:self.getSource()") + .sourceExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorSource).aqlSelf()) .style(this.createEdgeStyle()) .synchronizationPolicy(SynchronizationPolicy.SYNCHRONIZED) - .targetExpression("aql:self.getTarget()") + .targetExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorTarget).aqlSelf()) .build(); } @@ -151,8 +159,8 @@ protected ChangeContextBuilder getTargetReconnectToolBody() { .expression(ServiceMethod.of5(DiagramMutationAQLService::reconnectTarget).aql( AQLConstants.EDGE_SEMANTIC_ELEMENT, AQLConstants.SEMANTIC_RECONNECTION_TARGET, - AQLConstants.RECONNECTION_TARGET_VIEW, AQLConstants.OTHER_END, + AQLConstants.RECONNECTION_TARGET_VIEW, IEditingContext.EDITING_CONTEXT, AQLConstants.DIAGRAM )); diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractSuccessionEdgeDescriptionProvider.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractSuccessionEdgeDescriptionProvider.java index 469352089..af8157725 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractSuccessionEdgeDescriptionProvider.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/edges/AbstractSuccessionEdgeDescriptionProvider.java @@ -27,6 +27,7 @@ import org.eclipse.sirius.components.view.diagram.SynchronizationPolicy; import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.diagram.services.aql.DiagramQueryAQLService; +import org.eclipse.syson.model.services.aql.ModelQueryAQLService; import org.eclipse.syson.services.UtilService; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; @@ -82,8 +83,8 @@ public EdgeDescription create() { .semanticCandidatesExpression(ServiceMethod.of1(UtilService::getAllReachable).aqlSelf(domainType)) .style(this.createEdgeStyle()) .synchronizationPolicy(SynchronizationPolicy.SYNCHRONIZED) - .sourceExpression("aql:self.getSource()") - .targetExpression("aql:self.getTarget()") + .sourceExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorSource).aqlSelf()) + .targetExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorTarget).aqlSelf()) .build(); } diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/nodes/AbstractPortUsageBorderNodeDescriptionProvider.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/nodes/AbstractPortUsageBorderNodeDescriptionProvider.java index a01aad666..bb9e3d8af 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/nodes/AbstractPortUsageBorderNodeDescriptionProvider.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/nodes/AbstractPortUsageBorderNodeDescriptionProvider.java @@ -45,8 +45,6 @@ */ public abstract class AbstractPortUsageBorderNodeDescriptionProvider extends AbstractNodeDescriptionProvider { - protected static final String REDEFINE_PORT_PREFIX_TOOL_NAME = "Redefine Port And "; - protected final IDescriptionNameGenerator descriptionNameGenerator; protected final EReference eReference; @@ -146,11 +144,26 @@ protected List createPortUsageConditionalNodeStyles() { ); } + protected EdgeTool createBindingConnectorAsUsageEdgeTool(IViewDiagramElementFinder cache) { + return this.getViewEdgeToolService(cache).createBindingConnectorAsUsageEdgeTool( + new DescriptionFinder(this.descriptionNameGenerator).getConnectableNodeDescriptions(cache.getNodeDescriptions(), SysmlPackage.eINSTANCE.getUsage())); + } + protected EdgeTool createConnectionUsageEdgeTool(IViewDiagramElementFinder cache) { return this.getViewEdgeToolService(cache) .createConnectionUsageEdgeTool(new DescriptionFinder(this.descriptionNameGenerator).getConnectableNodeDescriptions(cache.getNodeDescriptions(), SysmlPackage.eINSTANCE.getUsage())); } + protected EdgeTool createFlowUsageEdgeTool(IViewDiagramElementFinder cache) { + return this.getViewEdgeToolService(cache) + .createFlowUsageEdgeTool(new DescriptionFinder(this.descriptionNameGenerator).getConnectableNodeDescriptions(cache.getNodeDescriptions(), SysmlPackage.eINSTANCE.getUsage())); + } + + protected EdgeTool createInterfaceUsageEdgeTool(IViewDiagramElementFinder cache) { + return this.getViewEdgeToolService(cache) + .createInterfaceUsageEdgeTool(new DescriptionFinder(this.descriptionNameGenerator).getConnectableNodeDescriptions(cache.getNodeDescriptions(), SysmlPackage.eINSTANCE.getUsage())); + } + protected ViewEdgeToolService getViewEdgeToolService(IViewDiagramElementFinder cache) { return new ViewEdgeToolService(this.viewBuilderHelper, this.diagramBuilderHelper, cache.getNodeDescriptions(), this.descriptionNameGenerator); } diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewCreateService.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewCreateService.java index 24529d51e..edc32e6b5 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewCreateService.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewCreateService.java @@ -1068,17 +1068,19 @@ public FlowUsage createFlowUsage(Feature source, Feature target) { */ public BindingConnectorAsUsage createBindingConnectorAsUsage(Feature source, Feature target) { - Type container = this.utilService.getConnectorContainer(source, target); - if (container == null) { + var connectorContainer = this.utilService.getConnectorContainer(source, target); + if (connectorContainer == null) { this.feedbackMessageService.addFeedbackMessage(new Message("Unable to find a suitable Type to hold the new binding connector.", MessageLevel.WARNING)); return null; } - BindingConnectorAsUsage bindingConnectorAsUsage = SysmlFactory.eINSTANCE.createBindingConnectorAsUsage(); - this.metamodelElementMutationService.addChildInParent(container, bindingConnectorAsUsage); + var bindingConnectorAsUsage = SysmlFactory.eINSTANCE.createBindingConnectorAsUsage(); + this.metamodelElementMutationService.addChildInParent(connectorContainer, bindingConnectorAsUsage); this.elementInitializer(bindingConnectorAsUsage); - this.metamodelElementMutationService.setConnectorEnds(bindingConnectorAsUsage, source, target, container); + Element sourceContainer = null; + Element targetContainer = null; + this.metamodelElementMutationService.setConnectorEnds(bindingConnectorAsUsage, source, target, sourceContainer, targetContainer, connectorContainer); return bindingConnectorAsUsage; } diff --git a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewEdgeToolService.java b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewEdgeToolService.java index 098452a37..1902de6d9 100644 --- a/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewEdgeToolService.java +++ b/backend/views/syson-diagram-common-view/src/main/java/org/eclipse/syson/diagram/common/view/services/ViewEdgeToolService.java @@ -398,6 +398,24 @@ public EdgeTool createReferenceSubsettingEdgeTool(List targetEl .build(); } + public EdgeTool createBindingConnectorAsUsageEdgeTool(List targetElementDescriptions) { + var builder = this.diagramBuilderHelper.newEdgeTool(); + + var body = this.viewBuilderHelper.newChangeContext() + .expression(ServiceMethod.of5(DiagramMutationAQLService::createBindingConnectorAsUsage) + .aql(org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.EDGE_SOURCE, + EdgeDescription.EDGE_TARGET, IEditingContext.EDITING_CONTEXT, + DiagramContext.DIAGRAM_CONTEXT)); + + return builder.name(this.nameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()) + " (bind)") + .iconURLsExpression(METAMODEL_ICONS_PATH + SysmlPackage.eINSTANCE.getBindingConnectorAsUsage().getName() + SVG) + .body(body.build()) + .targetElementDescriptions(targetElementDescriptions.toArray(DiagramElementDescription[]::new)) + .build(); + } + public EdgeTool createConnectionUsageEdgeTool(List targetElementDescriptions) { var builder = this.diagramBuilderHelper.newEdgeTool(); @@ -409,8 +427,44 @@ public EdgeTool createConnectionUsageEdgeTool(List targetElemen EdgeDescription.EDGE_TARGET, IEditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT)); - return builder.name(this.nameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getConnectionUsage())) - .iconURLsExpression("/icons/full/obj16/ConnectionUsage.svg") + return builder.name(this.nameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getConnectionUsage()) + " (connect)") + .iconURLsExpression(METAMODEL_ICONS_PATH + SysmlPackage.eINSTANCE.getConnectionUsage().getName() + SVG) + .body(body.build()) + .targetElementDescriptions(targetElementDescriptions.toArray(DiagramElementDescription[]::new)) + .build(); + } + + public EdgeTool createFlowUsageEdgeTool(List targetElementDescriptions) { + var builder = this.diagramBuilderHelper.newEdgeTool(); + + var body = this.viewBuilderHelper.newChangeContext() + .expression(ServiceMethod.of5(DiagramMutationAQLService::createFlowUsage) + .aql(org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.EDGE_SOURCE, + EdgeDescription.EDGE_TARGET, IEditingContext.EDITING_CONTEXT, + DiagramContext.DIAGRAM_CONTEXT)); + + return builder.name(this.nameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getFlowUsage()) + " (flow)") + .iconURLsExpression(METAMODEL_ICONS_PATH + SysmlPackage.eINSTANCE.getFlowUsage().getName() + SVG) + .body(body.build()) + .targetElementDescriptions(targetElementDescriptions.toArray(DiagramElementDescription[]::new)) + .build(); + } + + public EdgeTool createInterfaceUsageEdgeTool(List targetElementDescriptions) { + var builder = this.diagramBuilderHelper.newEdgeTool(); + + var body = this.viewBuilderHelper.newChangeContext() + .expression(ServiceMethod.of5(DiagramMutationAQLService::createInterfaceUsage) + .aql(org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_SOURCE, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.SEMANTIC_EDGE_TARGET, + org.eclipse.sirius.components.diagrams.description.EdgeDescription.EDGE_SOURCE, + EdgeDescription.EDGE_TARGET, IEditingContext.EDITING_CONTEXT, + DiagramContext.DIAGRAM_CONTEXT)); + + return builder.name(this.nameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getInterfaceUsage()) + " (connect)") + .iconURLsExpression(METAMODEL_ICONS_PATH + SysmlPackage.eINSTANCE.getInterfaceUsage().getName() + SVG) .body(body.build()) .targetElementDescriptions(targetElementDescriptions.toArray(DiagramElementDescription[]::new)) .build(); diff --git a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/edges/ConnectionUsageEdgeDescriptionProvider.java b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/edges/ConnectionUsageEdgeDescriptionProvider.java index fbfe3028d..8ecf7ebba 100644 --- a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/edges/ConnectionUsageEdgeDescriptionProvider.java +++ b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/edges/ConnectionUsageEdgeDescriptionProvider.java @@ -31,6 +31,7 @@ import org.eclipse.syson.diagram.common.view.edges.AbstractEdgeDescriptionProvider; import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.diagram.services.aql.DiagramQueryAQLService; +import org.eclipse.syson.model.services.aql.ModelQueryAQLService; import org.eclipse.syson.services.UtilService; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; @@ -85,22 +86,22 @@ protected LabelEditTool getEdgeEditTool() { public EdgeDescription create() { String domainType = SysMLMetamodelHelper.buildQualifiedName(SysmlPackage.eINSTANCE.getConnectionUsage()); return this.diagramBuilderHelper.newEdgeDescription() + .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .domainType(domainType) .isDomainBasedEdge(true) - .centerLabelExpression(ServiceMethod.of0(DiagramQueryAQLService::getEdgeLabel).aqlSelf()) .name(this.getName()) - .semanticCandidatesExpression(ServiceMethod.of1(UtilService::getAllReachable).aqlSelf(domainType)) - .sourceExpression("aql:self.getSource()") - .style(this.createEdgeStyle()) - .synchronizationPolicy(SynchronizationPolicy.SYNCHRONIZED) - .targetExpression("aql:self.getTarget()") - .preconditionExpression(ServiceMethod.of4(DiagramQueryAQLService::shouldRenderConnectionUsageEdge) + .preconditionExpression(ServiceMethod.of4(DiagramQueryAQLService::shouldRenderConnectorEdge) .aqlSelf(org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_SOURCE, org.eclipse.sirius.components.diagrams.description.EdgeDescription.GRAPHICAL_EDGE_TARGET, org.eclipse.sirius.components.diagrams.description.DiagramDescription.CACHE, IEditingContext.EDITING_CONTEXT) // Needs this to avoid instantiation on inheriting concept - + "and self.oclIsTypeOf(sysml::ConnectionUsage)") + + "and self.oclIsTypeOf(" + domainType + ")") + .semanticCandidatesExpression(ServiceMethod.of1(UtilService::getAllReachable).aqlSelf(domainType)) + .sourceExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorSource).aqlSelf()) + .style(this.createEdgeStyle()) + .synchronizationPolicy(SynchronizationPolicy.SYNCHRONIZED) + .targetExpression(ServiceMethod.of0(ModelQueryAQLService::getConnectorTarget).aqlSelf()) .build(); } diff --git a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/InheritedPortUsageBorderNodeDescriptionProvider.java b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/InheritedPortUsageBorderNodeDescriptionProvider.java index bb7559048..0bda79ede 100644 --- a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/InheritedPortUsageBorderNodeDescriptionProvider.java +++ b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/InheritedPortUsageBorderNodeDescriptionProvider.java @@ -16,8 +16,6 @@ import java.util.List; import org.eclipse.emf.ecore.EReference; -import org.eclipse.sirius.components.collaborative.diagrams.DiagramContext; -import org.eclipse.sirius.components.diagrams.description.EdgeDescription; import org.eclipse.sirius.components.view.builder.IViewDiagramElementFinder; import org.eclipse.sirius.components.view.builder.providers.IColorProvider; import org.eclipse.sirius.components.view.diagram.EdgeTool; @@ -25,10 +23,8 @@ import org.eclipse.sirius.components.view.diagram.NodePalette; import org.eclipse.sirius.components.view.diagram.OutsideLabelDescription; import org.eclipse.sirius.components.view.diagram.OutsideLabelPosition; -import org.eclipse.sirius.web.application.editingcontext.EditingContext; import org.eclipse.syson.diagram.common.view.nodes.AbstractPortUsageBorderNodeDescriptionProvider; import org.eclipse.syson.diagram.common.view.services.ViewCreateService; -import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; import org.eclipse.syson.util.AQLUtils; @@ -42,12 +38,6 @@ */ public class InheritedPortUsageBorderNodeDescriptionProvider extends AbstractPortUsageBorderNodeDescriptionProvider { - public static final String REDEFINE_INHERITED_PORT_SERVICE = "redefineInheritedPort"; - - protected static final String REDEFINE_PORTS_PREFIX_TOOL_NAME = "Redefine Ports And "; - - protected static final String REDEFINED_TARGET = "redefinedTarget"; - public InheritedPortUsageBorderNodeDescriptionProvider(EReference eReference, IColorProvider colorProvider, IDescriptionNameGenerator nameGenerator) { super(eReference, colorProvider, nameGenerator); } @@ -82,145 +72,10 @@ protected NodePalette createNodePalette(IViewDiagramElementFinder cache, NodeDes @Override protected List getEdgeTools(IViewDiagramElementFinder cache, NodeDescription nodeDescription) { List edgeTools = new ArrayList<>(); - var optInheritedNestedPort = cache - .getNodeDescription(this.descriptionNameGenerator.getInheritedBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getUsage_NestedPort())); - var optInheritedOwnedPort = cache - .getNodeDescription(this.descriptionNameGenerator.getInheritedBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getDefinition_OwnedPort())); - if (optInheritedNestedPort.isPresent() && optInheritedOwnedPort.isPresent()) { - var inheritedNestedPort = optInheritedNestedPort.get(); - var inheritedOwnedPort = optInheritedOwnedPort.get(); - edgeTools.add(this.createBindingConnectorAsUsageToInheritedPortUsageEdgeTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - edgeTools.add(this.createInterfaceUsageToInheritedPortUsageEdgeTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - edgeTools.add(this.createFlowUsageEdgeToInheritedPortUsageTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - } - var optNestedPort = cache.getNodeDescription(this.descriptionNameGenerator.getBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getUsage_NestedPort())); - var optOwnedPort = cache.getNodeDescription(this.descriptionNameGenerator.getBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getDefinition_OwnedPort())); - if (optNestedPort.isPresent() && optOwnedPort.isPresent()) { - var nestedPort = optNestedPort.get(); - var ownedPort = optOwnedPort.get(); - edgeTools.add(this.createBindingConnectorAsUsageToPortUsageEdgeTool(List.of(nestedPort, ownedPort))); - edgeTools.add(this.createInterfaceUsageToPortUsageEdgeTool(List.of(nestedPort, ownedPort))); - edgeTools.add(this.createFlowUsageEdgeToPortUsageTool(List.of(nestedPort, ownedPort))); - } + edgeTools.add(this.createBindingConnectorAsUsageEdgeTool(cache)); edgeTools.add(this.createConnectionUsageEdgeTool(cache)); + edgeTools.add(this.createFlowUsageEdgeTool(cache)); + edgeTools.add(this.createInterfaceUsageEdgeTool(cache)); return edgeTools; } - - private EdgeTool createBindingConnectorAsUsageToPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()) + " (bind)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of1(ViewCreateService::createBindingConnectorAsUsage).aqlSelf(EdgeDescription.SEMANTIC_EDGE_TARGET)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createInterfaceUsageToPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getInterfaceUsage()) + " (connect)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getInterfaceUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of5(DiagramMutationAQLService::createInterfaceUsage).aqlSelf(EdgeDescription.SEMANTIC_EDGE_TARGET, EdgeDescription.EDGE_SOURCE, - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createFlowUsageEdgeToPortUsageTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getFlowUsage()) + " (flow)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getFlowUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of1(ViewCreateService::createFlowUsage).aqlSelf(EdgeDescription.SEMANTIC_EDGE_TARGET)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createBindingConnectorAsUsageToInheritedPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORTS_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()) + " (bind)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newLet() - .variableName(REDEFINED_TARGET) - .valueExpression(AQLConstants.AQL_SELF) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of1(ViewCreateService::createBindingConnectorAsUsage).aqlSelf(REDEFINED_TARGET)) - .build()) - .build()) - .build()) - .build() - ) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createInterfaceUsageToInheritedPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORTS_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getInterfaceUsage()) + " (connect)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getInterfaceUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newLet() - .variableName(REDEFINED_TARGET) - .valueExpression(AQLConstants.AQL_SELF) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of5(DiagramMutationAQLService::createInterfaceUsage).aqlSelf(REDEFINED_TARGET, EdgeDescription.EDGE_SOURCE, - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT)) - .build()) - .build()) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createFlowUsageEdgeToInheritedPortUsageTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORTS_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getFlowUsage()) + " (flow)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getFlowUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newLet() - .variableName(REDEFINED_TARGET) - .valueExpression(AQLConstants.AQL_SELF) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, REDEFINE_INHERITED_PORT_SERVICE, List.of( - EdgeDescription.EDGE_SOURCE, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of1(ViewCreateService::createFlowUsage).aqlSelf(REDEFINED_TARGET)) - .build()) - .build()) - .build()) - .build() - ) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } } diff --git a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/PortUsageBorderNodeDescriptionProvider.java b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/PortUsageBorderNodeDescriptionProvider.java index 9435f1b78..b7a6d6565 100644 --- a/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/PortUsageBorderNodeDescriptionProvider.java +++ b/backend/views/syson-standard-diagrams-view/src/main/java/org/eclipse/syson/standard/diagrams/view/nodes/PortUsageBorderNodeDescriptionProvider.java @@ -16,9 +16,6 @@ import java.util.List; import org.eclipse.emf.ecore.EReference; -import org.eclipse.sirius.components.collaborative.diagrams.DiagramContext; -import org.eclipse.sirius.components.core.api.IEditingContext; -import org.eclipse.sirius.components.diagrams.description.EdgeDescription; import org.eclipse.sirius.components.view.builder.IViewDiagramElementFinder; import org.eclipse.sirius.components.view.builder.providers.IColorProvider; import org.eclipse.sirius.components.view.diagram.EdgeTool; @@ -26,14 +23,12 @@ import org.eclipse.sirius.components.view.diagram.NodePalette; import org.eclipse.sirius.components.view.diagram.OutsideLabelDescription; import org.eclipse.sirius.components.view.diagram.OutsideLabelPosition; -import org.eclipse.sirius.web.application.editingcontext.EditingContext; import org.eclipse.syson.diagram.common.view.nodes.AbstractPortUsageBorderNodeDescriptionProvider; import org.eclipse.syson.diagram.services.aql.DiagramMutationAQLService; import org.eclipse.syson.diagram.services.aql.DiagramQueryAQLService; import org.eclipse.syson.services.DeleteService; import org.eclipse.syson.sysml.SysmlPackage; import org.eclipse.syson.util.AQLConstants; -import org.eclipse.syson.util.AQLUtils; import org.eclipse.syson.util.IDescriptionNameGenerator; import org.eclipse.syson.util.ServiceMethod; @@ -96,130 +91,10 @@ protected NodePalette createNodePalette(IViewDiagramElementFinder cache, NodeDes @Override protected List getEdgeTools(IViewDiagramElementFinder cache, NodeDescription nodeDescription) { List edgeTools = new ArrayList<>(); - var optNestedPort = cache.getNodeDescription(this.descriptionNameGenerator.getBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getUsage_NestedPort())); - var optOwnedPort = cache.getNodeDescription(this.descriptionNameGenerator.getBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getDefinition_OwnedPort())); - if (optNestedPort.isPresent() && optOwnedPort.isPresent()) { - var nestedPort = optNestedPort.get(); - var ownedPort = optOwnedPort.get(); - edgeTools.add(this.createBindingConnectorAsUsageEdgeTool(List.of(nestedPort, ownedPort))); - edgeTools.add(this.createInterfaceUsageEdgeTool(List.of(nestedPort, ownedPort))); - edgeTools.add(this.createFlowUsageEdgeTool(List.of(nestedPort, ownedPort))); - } - var optInheritedNestedPort = cache - .getNodeDescription(this.descriptionNameGenerator.getInheritedBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getUsage_NestedPort())); - var optInheritedOwnedPort = cache - .getNodeDescription(this.descriptionNameGenerator.getInheritedBorderNodeName(SysmlPackage.eINSTANCE.getPortUsage(), SysmlPackage.eINSTANCE.getDefinition_OwnedPort())); - if (optInheritedNestedPort.isPresent() && optInheritedOwnedPort.isPresent()) { - var inheritedNestedPort = optInheritedNestedPort.get(); - var inheritedOwnedPort = optInheritedOwnedPort.get(); - edgeTools.add(this.createBindingConnectorAsUsageToInheritedPortUsageEdgeTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - edgeTools.add(this.createInterfaceUsageToInheritedPortUsageEdgeTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - edgeTools.add(this.createFlowUsageEdgeToInheritedPortUsageTool(List.of(inheritedNestedPort, inheritedOwnedPort))); - } + edgeTools.add(this.createBindingConnectorAsUsageEdgeTool(cache)); edgeTools.add(this.createConnectionUsageEdgeTool(cache)); - + edgeTools.add(this.createFlowUsageEdgeTool(cache)); + edgeTools.add(this.createInterfaceUsageEdgeTool(cache)); return edgeTools; } - - private EdgeTool createBindingConnectorAsUsageEdgeTool(List targetElementDescriptions) { - var builder = this.diagramBuilderHelper.newEdgeTool(); - - var body = this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of5(DiagramMutationAQLService::createBindingConnectorAsUsage) - .aql(EdgeDescription.SEMANTIC_EDGE_SOURCE, EdgeDescription.SEMANTIC_EDGE_TARGET, - EdgeDescription.EDGE_SOURCE, - EdgeDescription.EDGE_TARGET, - IEditingContext.EDITING_CONTEXT, - DiagramContext.DIAGRAM_CONTEXT)); - - return builder - .name(this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()) + " (bind)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage().getName())) - .body(body.build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createInterfaceUsageEdgeTool(List targetElementDescriptions) { - var builder = this.diagramBuilderHelper.newEdgeTool(); - - var body = this.viewBuilderHelper.newChangeContext() - .expression( - ServiceMethod.of5(DiagramMutationAQLService::createInterfaceUsage) - .aql(EdgeDescription.SEMANTIC_EDGE_SOURCE, EdgeDescription.SEMANTIC_EDGE_TARGET, - EdgeDescription.EDGE_SOURCE, EdgeDescription.EDGE_TARGET, - IEditingContext.EDITING_CONTEXT, - DiagramContext.DIAGRAM_CONTEXT) - ); - - return builder - .name(this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getInterfaceUsage()) + " (connect)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getInterfaceUsage().getName())) - .body(body.build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createFlowUsageEdgeTool(List targetElementDescriptions) { - var builder = this.diagramBuilderHelper.newEdgeTool(); - - var body = this.viewBuilderHelper.newChangeContext() - .expression(ServiceMethod.of5(DiagramMutationAQLService::createFlowUsage) - .aql(EdgeDescription.SEMANTIC_EDGE_SOURCE, EdgeDescription.SEMANTIC_EDGE_TARGET, - EdgeDescription.EDGE_SOURCE, EdgeDescription.EDGE_TARGET, - IEditingContext.EDITING_CONTEXT, - DiagramContext.DIAGRAM_CONTEXT)); - - return builder - .name(this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getFlowUsage()) + " (flow)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getFlowUsage().getName())) - .body(body.build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createBindingConnectorAsUsageToInheritedPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage()) + " (bind)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getBindingConnectorAsUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, "redefineInheritedPort", List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, "createBindingConnectorAsUsage", AQLConstants.SELF)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createInterfaceUsageToInheritedPortUsageEdgeTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getInterfaceUsage()) + " (connect)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getInterfaceUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, "redefineInheritedPort", List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, "createInterfaceUsage", AQLConstants.SELF)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } - - private EdgeTool createFlowUsageEdgeToInheritedPortUsageTool(List targetElementDescriptions) { - return this.diagramBuilderHelper.newEdgeTool() - .name(REDEFINE_PORT_PREFIX_TOOL_NAME + this.descriptionNameGenerator.getCreationToolName(SysmlPackage.eINSTANCE.getFlowUsage()) + " (flow)") - .iconURLsExpression(this.getToolIconURLsExpression(SysmlPackage.eINSTANCE.getFlowUsage().getName())) - .body(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_TARGET, "redefineInheritedPort", List.of( - EdgeDescription.EDGE_TARGET, EditingContext.EDITING_CONTEXT, DiagramContext.DIAGRAM_CONTEXT))) - .children(this.viewBuilderHelper.newChangeContext() - .expression(AQLUtils.getServiceCallExpression(EdgeDescription.SEMANTIC_EDGE_SOURCE, "createFlowUsage", AQLConstants.SELF)) - .build()) - .build()) - .targetElementDescriptions(targetElementDescriptions.toArray(NodeDescription[]::new)) - .build(); - } } diff --git a/doc/content/modules/user-manual/pages/release-notes/2026.3.0.adoc b/doc/content/modules/user-manual/pages/release-notes/2026.3.0.adoc index 3ba67a65f..423c8323a 100644 --- a/doc/content/modules/user-manual/pages/release-notes/2026.3.0.adoc +++ b/doc/content/modules/user-manual/pages/release-notes/2026.3.0.adoc @@ -87,6 +87,9 @@ This tool allows to create a `SatisfyRequirementUsage` between the `Feature` and Additional ends can be created using the _New end_ graphical node tool (which replaces the _New Part as end_ previously available only on `AllocationDefinition` graphical nodes). ** Newly created `InterfaceDefinition` graphical nodes now have two initial _ports_ named _source_ and _target_. Additional ports can be created using the _New Port as end_ graphical node tool. +** Rework the way _New Binding Connector As Usage (bind)_, _New Flow (flow)_ and _New Interface (interface)_ graphical edge tools works. +Currently, when a binding/interface/flow graphical edge tool is executed, if it involves an inherited feature(s) (as source and/or target of the tool), then the inherited feature(s) is/are redefined first. +Instead SysON will now use the inherited elements without redefining them first, as it is done by the _New Connection (connect)_ edge tool. * In textual import/export: