]> gerrit.simantics Code Review - simantics/sysdyn.git/commitdiff
Merged changes from trunks to stable branch until r24045. This covers the 2012-1
authorlehtonen <lehtonen@ac1ea38d-2e2b-0410-8846-a27921b304fc>
Wed, 1 Feb 2012 17:23:09 +0000 (17:23 +0000)
committerlehtonen <lehtonen@ac1ea38d-2e2b-0410-8846-a27921b304fc>
Wed, 1 Feb 2012 17:23:09 +0000 (17:23 +0000)
sprint and a few extra changes. For issues closed in the 2012-1 sprint, see
https://www.simantics.org/redmine/projects/simantics-platform/versions/161.

fixes #3161

git-svn-id: https://www.simantics.org/svn/simantics/sysdyn/branches@24127 ac1ea38d-2e2b-0410-8846-a27921b304fc

133 files changed:
stable/org.simantics.modelica/src/org/simantics/modelica/ModelicaManager.java
stable/org.simantics.sysdyn.ontology/graph.tg
stable/org.simantics.sysdyn.ontology/graph/ChartViewpoints.pgraph
stable/org.simantics.sysdyn.ontology/graph/Sysdyn.pgraph
stable/org.simantics.sysdyn.ontology/graph/SysdynFunctions.pgraph
stable/org.simantics.sysdyn.ontology/graph/Sysdyn_ModelBrowser_Viewpoint.pgraph
stable/org.simantics.sysdyn.ontology/graph/VensimFunctions.pgraph
stable/org.simantics.sysdyn.ontology/graph/WorkModel.pgraph
stable/org.simantics.sysdyn.ontology/src/org/simantics/sysdyn/SysdynResource.java
stable/org.simantics.sysdyn.ui/adapters.xml
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/actions/NewEnumerationAction.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/actions/NewFunctionAction.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/actions/NewModuleTypeAction.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/contributions/SimulationResult.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/contributions/SimulationResultDecorator.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/contributions/SimulationResultImager.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/nodes/EnumerationNode.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/nodes/ExperimentNode.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/browser/nodes/SimulationResultNode.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/dependencies/CreateDependencyGraph.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/editor/SysdynConnectionAdvisor.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/elements2/InputFactory.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/elements2/ValveFactory.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/elements2/connections/RouteFlowConnectionFactory.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/ToggleResultActivation.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportExternalFunctionFilesHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/exports/ExportModuleHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/imports/ImportExternalFunctionFilesHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/newComponents/NewEnumerationNodeHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/newComponents/NewFunctionHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/newComponents/NewModuleNodeHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/handlers/newComponents/NewXYLineChartHandler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/menu/PlaybackSliderContribution.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/project/SysdynProject.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/ArrayIndexesTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/ConfigurationTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/DependencyTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/EnumerationTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/EquationTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/InputVariableTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/LookupTableTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/ModuleInputTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/ModuleOutputTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/ResourceSelectionProcessor.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ArrayExpressionCombo.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ChartTableWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ChartWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ExpressionWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ModuleInputEditingSupport.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ModuleOutputEditingSupport.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ReferenceRow.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ShortcutTabWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ValveOrientationGroup.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/ValveTextLocationGroup.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/EnumerationIndexNode.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/EnumerationIndexes.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/EnumerationLabeler.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/RedeclarationNode.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/ReplaceableEnumerations.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/ReplaceableIndexesWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/ShowInChartsCheckBox.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/arrays/UsedEnumerations.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/expressions/BasicExpression.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/expressions/DelayExpression.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/expressions/StockExpression.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/expressions/WithLookupExpression.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/properties/widgets/functions/FunctionCodeWidget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/ChartDropTarget.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/ChartPanel.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/ChartPanelElement.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/ChartPanelSeparator.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/TrendView.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/ChartUtils.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/XYDataset.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/AllVariablesOfModel.java [new file with mode: 0644]
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/RangeComposite.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/VariableExistsValidator.java [new file with mode: 0644]
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/VariableProposalProvider.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/bar/BarSeriesPropertyComposite.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/pie/PieSeriesPropertyComposite.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/xyline/SeriesPropertyComposite.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/xyline/XYLineAxisAndVariablesTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/xyline/XYLineGeneralPropertiesTab.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/utils/ExpressionUtils.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/utils/VariableNameUtils.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/validation/DependencyFunction.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/validation/ValidationUtils.java
stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/wizards/modules/WizardModulesExportPage.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/adapter/ChildVariable.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/adapter/VariableRVIUtils.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/manager/FunctionUtils.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/manager/SysdynExperiment.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/manager/SysdynModel.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/manager/SysdynPlaybackExperiment.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Auxiliary.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Dependency.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Function.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Model.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Stock.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Subscript.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Valve.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/mdlImport/mdlElements/Variable.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/modelica/ModelicaWriter.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/ArrayIndexes.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Auxiliary.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Book.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Cloud.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Configuration.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Dependency.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/DiagramContainerDummy.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Enumeration.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/EnumerationIndex.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/EnumerationIndexes.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Flow.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Input.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/LibraryDummy.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Model.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Module.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/ModuleType.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Redeclaration.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Sheet.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Stock.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Valve.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/Variable.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/ConstantExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/DelayExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/Expression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/Expressions.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/LookupExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/NormalExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/ParameterExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/StockExpression.java
stable/org.simantics.sysdyn/src/org/simantics/sysdyn/representation/expressions/WithLookupExpression.java

index fb5d4309d463b1cdaf56ca58750658462c96d68b..d77b43799fa6270ae274679424110f2eb3122bc3 100644 (file)
@@ -105,7 +105,7 @@ public class ModelicaManager {
                     if(entry != null) {\r
                         URL fileURL = FileLocator.toFileURL(entry);\r
                         File root = new File( URLDecoder.decode(fileURL.getPath(), "UTF-8") );\r
-                        File f = new File(root, "OpenModelica1.7.0");\r
+                        File f = new File(root, "OpenModelica1.8.0");\r
                         return f;\r
                     }\r
                 }\r
@@ -122,7 +122,7 @@ public class ModelicaManager {
             case SUN:\r
                 return new File("/usr/bin/omc");\r
             case WINDOWS:\r
-                return new File("c:/OpenModelica1.7.0");\r
+                return new File("c:/OpenModelica1.8.0");\r
             default:\r
                 throw new UnsatisfiedLinkError("Unsupported operating system: " + os);\r
         }\r
@@ -239,6 +239,9 @@ public class ModelicaManager {
             if(inits.containsKey("tolerance")) {\r
                 s.print(",tolerance="+inits.get("tolerance"));\r
             }\r
+            if(inits.containsKey("numberOfIntervals")) {\r
+                s.print(",numberOfIntervals="+inits.get("numberOfIntervals"));\r
+            }\r
             s.print(");\n");\r
             s.println("getErrorString();");\r
             s.close();\r
@@ -282,10 +285,13 @@ public class ModelicaManager {
             Map<String, String> env = processBuilder.environment();\r
             \r
             env.put("OPENMODELICAHOME", openModelicaHome.getAbsolutePath());\r
-            env.put("OPENMODELICALIBRARY", openModelicaHome.getAbsolutePath() + "\\lib\\omlibrary");\r
-            env.put("OMPATH", openModelicaHome.getAbsolutePath() + "\\bin");\r
-            env.put("MINGW", openModelicaHome.getAbsolutePath() + "\\MinGW");\r
-            env.put("PATH", env.get("PATH") + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\MinGW\\lib");\r
+            env.put("OPENMODELICALIBRARY", new File(openModelicaHome, "lib\\omlibrary").getAbsolutePath());\r
+            env.put("OMPATH", new File(openModelicaHome, "bin").getAbsolutePath());\r
+            env.put("MINGW", new File(openModelicaHome, "MinGW").getAbsolutePath());\r
+            env.put("PATH", env.get("PATH") \r
+                    + System.getProperty("path.separator") + new File(openModelicaHome, "bin").getAbsolutePath()\r
+                    + System.getProperty("path.separator") + new File(openModelicaHome, "MinGW\\lib").getAbsolutePath()\r
+                    + System.getProperty("path.separator") + new File(openModelicaHome, "MinGW\\bin").getAbsolutePath());\r
             \r
             // Start the building process\r
             Process process = processBuilder.start();\r
@@ -332,12 +338,14 @@ public class ModelicaManager {
             Map<String, String> env = processBuilder.environment();\r
             File openModelicaHome = getModelicaHome();\r
             env.put("OPENMODELICAHOME", openModelicaHome.getAbsolutePath());\r
-            env.put("OPENMODELICALIBRARY", openModelicaHome.getAbsolutePath() + "\\lib\\omlibrary\\msl31");\r
+            env.put("OPENMODELICALIBRARY", openModelicaHome.getAbsolutePath() + "\\lib\\omlibrary");\r
             env.put("OMPATH", openModelicaHome.getAbsolutePath() + "\\bin");\r
             env.put("MINGW", openModelicaHome.getAbsolutePath() + "\\MinGW");\r
-            env.put("PATH", env.get("PATH") + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\bin"\r
-                    + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\MinGW\\lib");\r
-           \r
+            env.put("PATH", env.get("PATH") \r
+                    + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\bin"\r
+                    + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\MinGW\\lib"\r
+                    + System.getProperty("path.separator") + openModelicaHome.getAbsolutePath() + "\\MinGW\\bin");\r
+\r
             // Simulate model\r
             Process process = processBuilder.start();\r
             \r
index 2e39e0293d0dee87fd91d7ac021e72715a2123d8..00e94b3e08537ccf8f26e55854882020759cd994 100644 (file)
Binary files a/stable/org.simantics.sysdyn.ontology/graph.tg and b/stable/org.simantics.sysdyn.ontology/graph.tg differ
index 44b844d02636a0b905d9ed69193987822a15bbf7..a0d99b4b67494a39b496ed6272306665d132a370 100644 (file)
@@ -73,8 +73,8 @@ BSBC
 BSBC\r
     @VP.customLabelDecorationRule   JFREE.Series        BSBC.SeriesLabelDecorationRule     \r
     \r
-//BSBC\r
-//    @VP.dropActionContribution JFREE.Series BSAC.Actions.SeriesDropAction 1.0      \r
+BSBC\r
+    @VP.dropActionContribution JFREE.Series BSAC.Actions.SeriesDropAction 1.0      \r
     \r
 BSBC\r
     VP.BrowseContext.HasVisualsContribution _ : VP.VisualsContribution\r
@@ -82,7 +82,7 @@ BSBC
         VP.VisualsContribution.HasRule VP.PassThruSorterRule\r
    \r
 BSAC.Actions : L0.Library\r
-//BSAC.Actions.SeriesDropAction : ACT.DropAction    \r
+BSAC.Actions.SeriesDropAction : ACT.DropAction    \r
 \r
 \r
 ///////////////////////////////////////////////\r
@@ -105,8 +105,8 @@ PSBC
 PSBC\r
     @VP.customLabelDecorationRule   JFREE.Series        PSBC.SeriesLabelDecorationRule     \r
     \r
-//PSBC\r
-//    @VP.dropActionContribution JFREE.Series PSAC.Actions.SeriesDropAction 1.0      \r
+PSBC\r
+    @VP.dropActionContribution JFREE.Series PSAC.Actions.SeriesDropAction 1.0      \r
     \r
 PSBC\r
     VP.BrowseContext.HasVisualsContribution _ : VP.VisualsContribution\r
@@ -114,4 +114,4 @@ PSBC
         VP.VisualsContribution.HasRule VP.PassThruSorterRule\r
    \r
 PSAC.Actions : L0.Library\r
-//PSAC.Actions.SeriesDropAction : ACT.DropAction    \r
+PSAC.Actions.SeriesDropAction : ACT.DropAction    \r
index 6b850bd2023318968d067dd6f826dcab9157655d..803aea0515d36b7d9a40722c546020235ccd243f 100644 (file)
@@ -30,27 +30,14 @@ SYSDYN.SharedModuleOntolofgy <T L0.Ontology
 //#####################################################################    
 
 SYSDYN.SysdynModel <T MOD.StructuralModel
-    // TODO [SIMU.HasConfiguration all SYSDYN.Configuration]
-    @L0.assert SYSDYN.HasStartTime 0.0
-    @L0.assert SYSDYN.HasStopTime 10.0
-    @L0.singleProperty SYSDYN.HasOutputInterval
-    @L0.singleProperty SYSDYN.HasTolerance
-    @L0.assert SYSDYN.HasSolver "euler"
-
-SYSDYN.HasStartTime <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double   
-
-SYSDYN.HasStopTime <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double
-    
-SYSDYN.HasOutputInterval <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double
-        
-SYSDYN.HasTolerance <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double
-    
-SYSDYN.HasSolver <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.String
+    >-- SYSDYN.SysdynModel.startTime --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.SysdynModel.stopTime --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.SysdynModel.outputInterval --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.SysdynModel.tolerance --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.SysdynModel.solver --> L0.String <R L0.HasProperty : L0.FunctionalRelation
+    @L0.assert SYSDYN.SysdynModel.startTime 0.0
+    @L0.assert SYSDYN.SysdynModel.stopTime 10.0
+    @L0.assert SYSDYN.SysdynModel.solver "euler"
     
 //#####################################################################
 // Configuration
@@ -88,17 +75,19 @@ SYSDYN.DefaultRealization <T L0X.Realization
 //#####################################################################
 
 SYSDYN.Variable <T STR.Component    
-    @L0.singleProperty SYSDYN.Variable.Type
-    @L0.optionalProperty SYSDYN.HasArrayIndexes    
-    @L0.optionalProperty SYSDYN.HasExpressions    
+    >-- SYSDYN.Variable.type --> L0.String <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.Variable.expressions --> SYSDYN.Expressions <R L0.DependsOn : L0.FunctionalRelation
+    >-- SYSDYN.Variable.arrayIndexes --> SYSDYN.ArrayIndexes <R L0.DependsOn : L0.FunctionalRelation
+    >-- SYSDYN.Variable.unit --> L0.String <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.Variable.isTailOf --> STR.Connection <R STR.IsConnectedTo
+        L0.InverseOf SYSDYN.HasTail 
+        STR.AllowsConnectionType SYSDYN.SysdynConnectionType
+        STR.HasAttachmentRelation DIA.HasPlainConnector
+    >-- SYSDYN.Variable.isHeadOf --> STR.Connection <R STR.IsConnectedTo
+        L0.InverseOf SYSDYN.HasHead
+        STR.AllowsConnectionType SYSDYN.SysdynConnectionType
+        STR.HasAttachmentRelation DIA.HasArrowConnector   
     @L0.assert L0.HasDataType $Double
-SYSDYN.Variable.Type <R L0.HasProperty
-    L0.HasDomain SYSDYN.Variable
-    L0.HasRange L0.String    
-
-SYSDYN.HasExpressions <R L0.DependsOn : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Variable
-    L0.HasRange SYSDYN.Expressions
 
 SYSDYN.HasUnit <R L0.HasProperty
     L0.HasRange L0.String
@@ -113,35 +102,34 @@ SYSDYN.HasRangeStep <R L0.HasProperty
     L0.HasRange L0.Double  
 
 SYSDYN.IndependentVariable <T SYSDYN.Variable     
-    @L0.optionalProperty SYSDYN.HasUnit
-    @L0.optionalProperty SYSDYN.HasRangeStart
-    @L0.optionalProperty SYSDYN.HasRangeEnd
-    @L0.optionalProperty SYSDYN.HasRangeStep
-    @L0.optionalProperty L0.HasDescription
-    @L0.singleProperty SYSDYN.HasExpressions
+    >-- SYSDYN.IndependentVariable.unit --> L0.String <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.IndependentVariable.rangeStart --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.IndependentVariable.rangeEnd --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.IndependentVariable.rangeStep --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    // To be used in transient graphs for showing the correct experiment in equation editor
+    >-- SYSDYN.IndependentVariable.activeExpression --> SYSDYN.Expression <R L0.HasProperty : L0.FunctionalRelation
 
 SYSDYN.Auxiliary <T SYSDYN.IndependentVariable
-    @L0.assert SYSDYN.Variable.Type "Real"
+    @L0.assert SYSDYN.Variable.type "Real"
 
 SYSDYN.Valve <T SYSDYN.IndependentVariable
-    @L0.assert SYSDYN.Variable.Type "Real"
+    @L0.assert SYSDYN.Variable.type "Real"
                 
 SYSDYN.Stock <T SYSDYN.IndependentVariable
-    @L0.assert SYSDYN.Variable.Type "Real"
+    @L0.assert SYSDYN.Variable.type "Real"
                 
 SYSDYN.Cloud <T SYSDYN.Variable
 
 SYSDYN.Input <T SYSDYN.Variable
-    @L0.optionalProperty SYSDYN.HasDefaultInputValue
-    @L0.optionalProperty L0.HasDescription
-    @L0.optionalProperty SYSDYN.HasUnit
-    @L0.assert SYSDYN.HasDefaultInputValue 0.0
-    @L0.assert SYSDYN.Variable.Type "Real"
+    >-- SYSDYN.Input.defaultInputValue --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    @L0.assert SYSDYN.Input.defaultInputValue 0.0
+    @L0.assert SYSDYN.Variable.type "Real"
     
 SYSDYN.Enumeration <T SYSDYN.Variable
-    @L0.singleProperty SYSDYN.HasEnumerationIndexes
-    @L0.assert SYSDYN.Variable.Type "type"
-    @L0.assert SYSDYN.IsReplaceable false
+    >-- SYSDYN.Enumeration.enumerationIndexes --> SYSDYN.EnumerationIndexes <R L0.DependsOn : L0.FunctionalRelation
+    >-- SYSDYN.Enumeration.isReplaceable --> L0.Boolean <R L0.HasProperty : L0.FunctionalRelation 
+    @L0.assert SYSDYN.Variable.type "type"
+    @L0.assert SYSDYN.Enumeration.isReplaceable false
     
 
 //#####################################################################
@@ -149,9 +137,7 @@ SYSDYN.Enumeration <T SYSDYN.Variable
 //#####################################################################
 
 SYSDYN.Module <T STR.Component
-    // TODO [STR.IsDefinedBy all Configuration]
-    @L0.singleProperty L0.HasLabel
-    @L0.property SYSDYN.HasRedeclaration 
+    >-- SYSDYN.Module.redeclaration --> SYSDYN.Redeclaration  <R L0.IsComposedOf
 
 SYSDYN.ModuleSymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "ModuleSymbol" SYSDYN.Module
@@ -168,188 +154,107 @@ SYSDYN.IsOutput <R L0.IsRelatedTo : L0.Tag
 
 SYSDYN.SysdynModuleLibrary <T L0.Library  
     @L0.singleProperty L0.HasName  
-    @L0.optionalProperty L0.HasDescription
     
     
 //#####################################################################
 // Connections and Relations
 //#####################################################################
-
-SYSDYN.IsTailOf <R STR.IsConnectedTo
-    L0.HasDomain SYSDYN.Variable
-    L0.HasRange SYSDYN.Dependency
-    L0.InverseOf SYSDYN.HasTail 
-    STR.AllowsConnectionType SYSDYN.SysdynConnectionType
-    STR.HasAttachmentRelation DIA.HasPlainConnector
-SYSDYN.IsHeadOf <R STR.IsConnectedTo
-    L0.HasDomain SYSDYN.Variable
-    L0.HasRange SYSDYN.Dependency
-    L0.InverseOf SYSDYN.HasHead
-    STR.AllowsConnectionType SYSDYN.SysdynConnectionType
-    STR.HasAttachmentRelation DIA.HasArrowConnector
-
 SYSDYN.Dependency <T STR.Connection
-    @L0.singleProperty SYSDYN.angle
+    >-- SYSDYN.Dependency.angle --> L0.Double <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.Dependency.refersTo --> SYSDYN.Variable <R L0.IsRelatedTo : L0.FunctionalRelation
     @L0.singleProperty SYSDYN.HasHead
     @L0.singleProperty SYSDYN.HasTail
-    @L0.optionalProperty SYSDYN.RefersTo
 
 SYSDYN.Flow <T STR.Connection
     @L0.singleProperty SYSDYN.HasHead
     @L0.singleProperty SYSDYN.HasTail
 
-SYSDYN.RefersTo <R L0.IsRelatedTo : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Dependency
-    L0.HasRange SYSDYN.Variable
 
 //#####################################################################
 // Expression
 //#####################################################################
 
-SYSDYN.HasEquation <R L0.HasProperty
-    L0.HasRange L0.String  
-    
-SYSDYN.HasEquationOrEmpty <R SYSDYN.HasEquation
-    L0.HasRange L0.String
-
-SYSDYN.HasInitialEquation <R SYSDYN.HasEquation
-    L0.HasRange L0.String
-
-SYSDYN.HasLookup <R SYSDYN.HasEquation
-    L0.HasRange L0.String  
-
-SYSDYN.HasMinX <R L0.HasProperty
-    L0.HasRange L0.Double
-
-SYSDYN.HasMaxX <R L0.HasProperty
-    L0.HasRange L0.Double
-
-SYSDYN.HasMinY <R L0.HasProperty
-    L0.HasRange L0.Double
-
-SYSDYN.HasMaxY <R L0.HasProperty
-    L0.HasRange L0.Double
-
-SYSDYN.HasArrayRange <R L0.HasProperty
-    L0.HasRange L0.String 
-
 SYSDYN.Expressions <T L0.OrderedSet <R L0.HasNext
 
 SYSDYN.Expression <T L0.Entity
-    @L0.optionalProperty SYSDYN.HasArrayRange
+    >-- SYSDYN.Expression.equation --> L0.String <R L0.HasProperty : L0.TotalFunction
+    >-- SYSDYN.Expression.arrayRange --> L0.String <R L0.HasProperty : L0.TotalFunction
+
+SYSDYN.HasEquationOrEmpty <R SYSDYN.Expression.equation
 
 SYSDYN.NormalExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasEquation    
+    @L0.singleProperty SYSDYN.Expression.equation    
 
 SYSDYN.ParameterExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasEquation   
+    @L0.singleProperty SYSDYN.Expression.equation   
 
 SYSDYN.ConstantExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasEquation   
+    @L0.singleProperty SYSDYN.Expression.equation   
 
 SYSDYN.DelayExpression <T SYSDYN.Expression
-    >-- SYSDYN.DelayExpression.expression --> L0.String <R SYSDYN.HasEquation
-    >-- SYSDYN.DelayExpression.order --> L0.Integer <R SYSDYN.HasEquation
-    >-- SYSDYN.DelayExpression.delayTime --> L0.String <R SYSDYN.HasEquation
-    >-- SYSDYN.DelayExpression.initialValue --> L0.String <R SYSDYN.HasEquationOrEmpty
+    >-- SYSDYN.DelayExpression.expression --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
+    >-- SYSDYN.DelayExpression.order --> L0.Integer <R SYSDYN.Expression.equation : L0.FunctionalRelation
+    >-- SYSDYN.DelayExpression.delayTime --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
+    >-- SYSDYN.DelayExpression.initialValue --> L0.String <R SYSDYN.HasEquationOrEmpty : L0.FunctionalRelation
         
 SYSDYN.StockExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasInitialEquation
+    >-- SYSDYN.StockExpression.initialEquation --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
 
 SYSDYN.LookupExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasLookup   
+    >-- SYSDYN.LookupExpression.lookup --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
 
 SYSDYN.WithLookupExpression <T SYSDYN.Expression
-    @L0.singleProperty SYSDYN.HasLookup  
-    @L0.singleProperty SYSDYN.HasEquation    
-    @L0.singleProperty SYSDYN.HasMinX
-    @L0.singleProperty SYSDYN.HasMaxX
-    @L0.singleProperty SYSDYN.HasMinY
-    @L0.singleProperty SYSDYN.HasMaxY
-
-SYSDYN.HasDefaultInputValue <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double
-            
-// To be used in transient graphs for showing the correct experiment in equation editor
-SYSDYN.HasActiveExpression <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.IndependentVariable
-    L0.HasRange SYSDYN.Expression
+    >-- SYSDYN.WithLookupExpression.expression --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
+    >-- SYSDYN.WithLookupExpression.lookup --> L0.String <R SYSDYN.Expression.equation : L0.FunctionalRelation
+    >-- SYSDYN.WithLookupExpression.minX --> L0.Double <R L0.IsRelatedTo : L0.TotalFunction
+    >-- SYSDYN.WithLookupExpression.maxX --> L0.Double <R L0.IsRelatedTo : L0.TotalFunction
+    >-- SYSDYN.WithLookupExpression.minY --> L0.Double <R L0.IsRelatedTo : L0.TotalFunction
+    >-- SYSDYN.WithLookupExpression.maxY --> L0.Double <R L0.IsRelatedTo : L0.TotalFunction
 
 //#####################################################################
 // Enumerations
 //#####################################################################
-
-SYSDYN.HasArrayIndexes <R L0.DependsOn : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Variable
-    L0.HasRange SYSDYN.ArrayIndexes
     
 SYSDYN.ArrayIndexes <T L0.OrderedSet <R L0.HasNext
 
-SYSDYN.HasEnumerationIndexes <R L0.DependsOn : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Enumeration
-    L0.HasRange SYSDYN.EnumerationIndexes
-    
 SYSDYN.EnumerationIndexes <T L0.OrderedSet <R L0.HasNext
 
 SYSDYN.EnumerationIndex <T L0.Entity
     @L0.singleProperty L0.HasName
-    @L0.assert SYSDYN.ShowEnumerationIndexInCharts true
-    
-SYSDYN.ShowEnumerationIndexInCharts <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Boolean
+    >-- SYSDYN.EnumerationIndex.showEnumerationIndexInCharts --> L0.Boolean <R L0.HasProperty : L0.FunctionalRelation
+    @L0.assert SYSDYN.EnumerationIndex.showEnumerationIndexInCharts true
     
 //#####################################################################
 // Redeclarations
 //#####################################################################
-    
-SYSDYN.IsReplaceable <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Enumeration
-    L0.HasRange L0.Boolean
-    
-SYSDYN.ReplacedEnumeration <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Redeclaration
-    L0.HasRange SYSDYN.Enumeration
-
-SYSDYN.ReplacingEnumeration  <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasDomain SYSDYN.Redeclaration
-    L0.HasRange SYSDYN.Enumeration
-    
+        
 SYSDYN.Redeclaration <T L0.Entity
-    @L0.singleProperty SYSDYN.ReplacedEnumeration
-    @L0.singleProperty SYSDYN.ReplacingEnumeration
-    
-SYSDYN.HasRedeclaration <R L0.IsComposedOf
-    L0.HasRange SYSDYN.Redeclaration
-    
+    >-- SYSDYN.Redeclaration.replacedEnumeration --> SYSDYN.Enumeration <R L0.IsRelatedTo : L0.TotalFunction
+        L0.InverseOf SYSDYN.Redeclaration.replacedEnumeration.Inverse <R L0.DependsOn : L0.FunctionalRelation 
+    >-- SYSDYN.Redeclaration.replacingEnumeration --> SYSDYN.Enumeration <R L0.IsRelatedTo : L0.TotalFunction    
+        L0.InverseOf SYSDYN.Redeclaration.replacingEnumeration.Inverse <R L0.DependsOn : L0.FunctionalRelation 
+            
 //#####################################################################
 // Functions
 //#####################################################################    
 
 SYSDYN.SysdynModelicaFunction <T L0.Entity
     @L0.singleProperty L0.HasName
-    @L0.singleProperty SYSDYN.HasModelicaFunctionCode
-    @L0.optionalProperty L0.HasDescription
-    
-SYSDYN.HasModelicaFunctionCode <R L0.HasProperty : L0.FunctionalRelation
-     L0.HasRange L0.String
+    >-- SYSDYN.SysdynModelicaFunction.modelicaFunctionCode --> L0.String <R L0.HasProperty : L0.TotalFunction
        
 SYSDYN.ExternalFunctionFile <T L0.Entity
     @L0.singleProperty L0.HasName
-    @L0.singleProperty SYSDYN.HasExternalFile
-
-SYSDYN.HasExternalFile <R L0.HasProperty
-    L0.HasRange L0.ByteArray
+    >-- SYSDYN.ExternalFunctionFile.externalFile --> L0.ByteArray <R L0.HasProperty
 
 SYSDYN.SysdynModelicaFunctionLibrary <T L0.Library  
     @L0.singleProperty L0.HasName  
-    @L0.optionalProperty L0.HasDescription
         
 //#####################################################################
 // Experiments
 //#####################################################################
 
 SYSDYN.Experiment <T SIMU.Experiment
-    @L0.property SYSDYN.HasResult
+    >-- SYSDYN.Experiment.result --> SYSDYN.Result <R L0.IsComposedOf
 
 SYSDYN.BasicExperiment <T SYSDYN.Experiment
 
@@ -358,9 +263,6 @@ SYSDYN.GameExperiment <T SYSDYN.Experiment
 SYSDYN.SimulateOnChangeExperiment <T SYSDYN.Experiment
 
 SYSDYN.PlaybackExperiment <T SYSDYN.Experiment
-            
-SYSDYN.HasResult <R L0.IsComposedOf
-    L0.HasRange SYSDYN.Result
 
 //#####################################################################
 // Results
@@ -368,18 +270,11 @@ SYSDYN.HasResult <R L0.IsComposedOf
 
 SYSDYN.Result <T L0.Entity
     @L0.singleProperty L0.HasName
-    @L0.optionalProperty SYSDYN.HasParameterFile
-    @L0.optionalProperty SYSDYN.HasResultFile
-    
-SYSDYN.ShowResult <R L0.IsRelatedTo : L0.Tag
-    @L0.symmetric
+    >-- SYSDYN.Result.parameterFile --> L0.String <R L0.HasProperty
+    >-- SYSDYN.Result.resultFile --> L0.String <R L0.HasProperty
+    >-- SYSDYN.Result.showResult --> SYSDYN.Result <R L0.IsRelatedTo : L0.Tag
+        @L0.symmetric
 
-SYSDYN.HasParameterFile <R L0.HasProperty
-    L0.HasRange L0.String  
-
-SYSDYN.HasResultFile <R L0.HasProperty
-    L0.HasRange L0.String  
-   
 //#####################################################################
 //#####################################################################
 //################              DIAGRAM               #################
@@ -392,29 +287,23 @@ SYSDYN.HasResultFile <R L0.HasProperty
 
 SYSDYN.IsHeadOfTerminal
     L0.InverseOf SYSDYN.HasHeadTerminal
-    @MOD.terminalRelation SYSDYN.IsHeadOf
+    @MOD.terminalRelation SYSDYN.Variable.isHeadOf
 SYSDYN.IsTailOfTerminal
     L0.InverseOf SYSDYN.HasTailTerminal
-    @MOD.terminalRelation SYSDYN.IsTailOf
+    @MOD.terminalRelation SYSDYN.Variable.isTailOf
 
 SYSDYN.SysdynTerminal <T DIA.Terminal
     @L0.assert DIA.Terminal.AllowedDirections 0
 
 //#####################################################################
 SYSDYN.Valve <T STR.Component
-    @MOD.connection SYSDYN.IsTailOf
-    @MOD.connection SYSDYN.IsHeadOf
-    
-SYSDYN.HasValveOrientation <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange SYSDYN.Orientation    
+    @MOD.connection SYSDYN.Variable.isTailOf
+    @MOD.connection SYSDYN.Variable.isHeadOf
     
 SYSDYN.Orientation <T L0.Entity    
 SYSDYN.Horizontal <T SYSDYN.Orientation
 SYSDYN.Vertical <T SYSDYN.Orientation   
 
-SYSDYN.HasTextLocation <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange SYSDYN.Location    
-    
 SYSDYN.Location <T L0.Entity
 SYSDYN.Left <T SYSDYN.Location
 SYSDYN.Right <T SYSDYN.Location
@@ -424,8 +313,9 @@ SYSDYN.Center <T SYSDYN.Location
 
 SYSDYN.ValveSymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "Valve" SYSDYN.Valve
-    @L0.assert SYSDYN.Orientation SYSDYN.Horizontal
-    @L0.optionalProperty SYSDYN.HasTextLocation
+    >-- SYSDYN.ValveSymbol.orientation --> SYSDYN.Orientation <R L0.HasProperty : L0.FunctionalRelation
+    @L0.assert SYSDYN.ValveSymbol.orientation SYSDYN.Horizontal
+    >-- SYSDYN.ValveSymbol.textLocation --> SYSDYN.Location <R L0.HasProperty : L0.FunctionalRelation
     L0.IsDependencyOf BasicSymbols
     STR.IsDefinedBy _ : DIA.Composite <R L0.HasNext 
         @L0.orderedSet 
@@ -436,8 +326,8 @@ SYSDYN.ValveSymbol <T DIA.FontProvider <T DIA.ColorProvider
 
 //#####################################################################
 SYSDYN.Auxiliary <T STR.Component
-    @MOD.connection SYSDYN.IsTailOf
-    @MOD.connection SYSDYN.IsHeadOf
+    @MOD.connection SYSDYN.Variable.isTailOf
+    @MOD.connection SYSDYN.Variable.isHeadOf
 
 SYSDYN.AuxiliarySymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "Auxiliary" SYSDYN.Auxiliary
@@ -451,8 +341,8 @@ SYSDYN.AuxiliarySymbol <T DIA.FontProvider <T DIA.ColorProvider
 
 //#####################################################################
 SYSDYN.Cloud <T STR.Component
-    @MOD.connection SYSDYN.IsTailOf
-    @MOD.connection SYSDYN.IsHeadOf
+    @MOD.connection SYSDYN.Variable.isTailOf
+    @MOD.connection SYSDYN.Variable.isHeadOf
 
 SYSDYN.CloudSymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "Cloud" SYSDYN.Cloud
@@ -466,8 +356,8 @@ SYSDYN.CloudSymbol <T DIA.FontProvider <T DIA.ColorProvider
 
 //#####################################################################
 SYSDYN.Input <T STR.Component
-    @MOD.connection SYSDYN.IsTailOf
-    @MOD.connection SYSDYN.IsHeadOf
+    @MOD.connection SYSDYN.Variable.isTailOf
+    @MOD.connection SYSDYN.Variable.isHeadOf
 
 SYSDYN.InputSymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "Input" SYSDYN.Input
@@ -481,8 +371,8 @@ SYSDYN.InputSymbol <T DIA.FontProvider <T DIA.ColorProvider
 
 //#####################################################################
 SYSDYN.Stock <T STR.Component
-    @MOD.connection SYSDYN.IsTailOf
-    @MOD.connection SYSDYN.IsHeadOf
+    @MOD.connection SYSDYN.Variable.isTailOf
+    @MOD.connection SYSDYN.Variable.isHeadOf
 
 SYSDYN.StockSymbol <T DIA.FontProvider <T DIA.ColorProvider
     @MOD.defSymbol "Stock" SYSDYN.Stock
@@ -498,24 +388,15 @@ SYSDYN.StockSymbol <T DIA.FontProvider <T DIA.ColorProvider
 // Diagram connection types
 //#####################################################################
 
-SYSDYN.angle <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.Double
-    
-SYSDYN.Polarity <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.String
-    
-SYSDYN.PolarityLocation <R L0.HasProperty : L0.FunctionalRelation
-    L0.HasRange L0.String
-
 SYSDYN.FlowConnection <T DIA.RouteGraphConnection
     MOD.DiagramConnectionTypeToConnectionType
         SYSDYN.Flow  
 
 SYSDYN.DependencyConnection <T DIA.Connection
-    @L0.singleProperty SYSDYN.angle
-    @L0.optionalProperty SYSDYN.Polarity
-    @L0.optionalProperty SYSDYN.PolarityLocation
-    @L0.assert SYSDYN.angle 0.1
+    @L0.singleProperty SYSDYN.Dependency.angle
+    >-- SYSDYN.DependencyConnection.polarity --> L0.String <R L0.HasProperty : L0.FunctionalRelation
+    >-- SYSDYN.DependencyConnection.polarityLocation --> L0.String <R L0.HasProperty : L0.FunctionalRelation    
+    @L0.assert SYSDYN.Dependency.angle 0.1
     MOD.DiagramConnectionTypeToConnectionType
         SYSDYN.Dependency
 
index ba1ceb93cd37d122c9936caa3b980575e2a4a63a..09ced343f87e7c384f8029f419f063ca68d97b9e 100644 (file)
@@ -6,7 +6,7 @@ FL = <http://www.simantics.org/Sysdyn-1.1/Built-in Functions> : SYSDYN.SysdynMod
 \r
 FL.xidz : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription "X if divided by zero"\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
        input Real b;\r
        input Real x;\r
        output Real z;\r
@@ -19,7 +19,7 @@ algorithm
 \r
 FL.zidz : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription "Zero if divided by zero"\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     output Real z;\r
 algorithm\r
@@ -27,7 +27,7 @@ algorithm
 \r
 FL.interpolate : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription "Interpolate function for two-dimensional table"\r
-    SYSDYN.HasModelicaFunctionCode """    input Real u "input value (first column of table)";\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real u "input value (first column of table)";\r
     input Real table[:, :] "table to be interpolated";\r
     output Real y "interpolated input value (icol column of table)";\r
 algorithm\r
@@ -36,7 +36,7 @@ algorithm
     \r
 FL.interpolateFull : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription "The full interpolate function"\r
-    SYSDYN.HasModelicaFunctionCode """    input Real u "input value (first column of table)";\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real u "input value (first column of table)";\r
     input Real table[:, :] "table to be interpolated";\r
     input Integer icol "column of table to be interpolated";\r
     output Real y "interpolated input value (icol column of table)";\r
index a5129dc056325357a59d2f58754070f9ac9cfbed..29442e80d291200c2da11ec5244fb1afd91cc32b 100644 (file)
@@ -24,6 +24,9 @@ SBC.ModuleContentChildRule : VP.ChildRule
 SBC.ModuleTypeLabelRule : VP.LabelRule\r
 \r
 MBC\r
+    @VP.relationChildRuleWithFolder SIMU.Model          L0.ConsistsOf   SIMU.Experiment\r
+        SBC.ExperimentsFolder : VP.ResourceNodeType\r
+    //@VP.relationChildRule           SIMU.Experiment     L0.ConsistsOf   SIMU.Run\r
     // Function libraries  \r
     // Functions folder  \r
     @VP.relationChildRuleWithFolder MOD.StructuralModel L0.ConsistsOf   SYSDYN.SysdynModelicaFunction\r
@@ -55,6 +58,8 @@ MBC
        \r
 // Labels        \r
 MBC\r
+    @VP.constantLabelRule           SBC.ExperimentsFolder         "Experiments"\r
+    @VP.customLabelRule             SIMU.Run                      PROJECT.ProjectBrowseContext.RunLabelRule\r
     @VP.constantLabelRule           SBC.FunctionsFolder           "Functions"\r
     @VP.constantLabelRule           SBC.SharedFunctionsFolder     "Shared Functions"    \r
     @VP.constantLabelRule           SBC.ModulesFolder             "Modules"\r
@@ -64,6 +69,7 @@ MBC
     \r
 // Images\r
 MBC\r
+    @VP.constantImageRule           SBC.ExperimentsFolder           PROJECT.ProjectBrowseContext.Images.Folder\r
     @VP.constantImageRule           SBC.FunctionsFolder             SILK.folder\r
     @VP.constantImageRule           SBC.SharedFunctionsFolder       SILK.folder    \r
     @VP.constantImageRule           SYSDYN.SysdynModelicaFunction   SILK.brick\r
index 08e4cc5a0b82430543e02d58debc07cdff3462f8..ee392f50d764e8bc051ad376be9e6e3bdf021438 100644 (file)
@@ -9,7 +9,7 @@ VF.DELAYFIXED : SYSDYN.SysdynModelicaFunction
     L0.HasDescription """DELAY FIXED( inputVar , dtime , init )\r
     -> delay(inputVar, dtime)\r
     init -value is ignored."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real inputVar;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real inputVar;\r
     input Real dtime;\r
     input Real init;\r
     input Real t = time;\r
@@ -23,7 +23,7 @@ algorithm
 VF.IFTHENELSE : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """IF THEN ELSE( cond , ontrue , onfalse )\r
     -> if cond then ontrue else onfalse"""\r
-    SYSDYN.HasModelicaFunctionCode """    input Boolean cond;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Boolean cond;\r
     input Real ontrue;\r
     input Real onfalse;\r
     output Real z;\r
@@ -33,7 +33,7 @@ algorithm
 VF.MAX : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """MAX(a, b) \r
     Returns the larger of a and b."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     output Real z;\r
 algorithm\r
@@ -42,7 +42,7 @@ algorithm
 VF.MIN : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """MIN(a, b) \r
     Returns the smaller of a and b."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     output Real z;\r
 algorithm\r
@@ -51,7 +51,7 @@ algorithm
 VF.XIDZ : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """XIDZ(a, b, x)\r
     x if divided by zero, a/b otherwise."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     input Real x;\r
     output Real z;\r
@@ -61,7 +61,7 @@ algorithm
 VF.ZIDZ : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """XIDZ(a, b)\r
     Zero if divided by zero, a/b otherwise."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     output Real z;\r
 algorithm\r
@@ -70,7 +70,7 @@ algorithm
 VF.ABS : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """ABS(x)\r
     Returns the absolute value of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := abs(x);"""      \r
@@ -78,7 +78,7 @@ algorithm
 VF.SQRT : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """SQRT(x)\r
     Returns the square root of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := sqrt(x);"""   \r
@@ -86,7 +86,7 @@ algorithm
 VF.MODULO : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """MODULO(a, b)\r
     Returns the remainder when a is divided by b. """\r
-    SYSDYN.HasModelicaFunctionCode """    input Real a;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real a;\r
     input Real b;\r
     output Real z;\r
 algorithm\r
@@ -95,7 +95,7 @@ algorithm
 VF.PULSE : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """PULSE(start, width)\r
     Returns 1.0 starting at time start and lasting for interval width. 0.0 is returned at other times."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real start;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real start;\r
     input Real width;\r
     input Real t = time;\r
     output Real z;    \r
@@ -105,7 +105,7 @@ algorithm
 VF.RAMP : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """RAMP(slope, startTime, endTime) \r
     Returns 0 until the start time and then slopes upward until end time and then holds constant."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real slope;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real slope;\r
     input Real startTime;\r
     input Real endTime;\r
     input Real t = time;\r
@@ -123,7 +123,7 @@ algorithm
 VF.STEP : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """STEP(height, stepTime)\r
     Returns 0.0 until the step time and then returns height."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real height;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real height;\r
     input Real stepTime;\r
     input Real t = time;\r
     output Real z;\r
@@ -135,7 +135,7 @@ algorithm
 VF.EXP : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """\r
     """\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := exp(x);"""\r
@@ -143,7 +143,7 @@ algorithm
 VF.SIN : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """SIN(x)\r
     Returns the sine of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := sin(x);"""  \r
@@ -151,7 +151,7 @@ algorithm
 VF.SINH : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """SINH(x)\r
     Returns the hyperbolic sine of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := sinh(x);"""  \r
@@ -159,7 +159,7 @@ algorithm
 VF.COS : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """COS(x)\r
     Returns the cosine of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := cos(x);"""  \r
@@ -167,7 +167,7 @@ algorithm
 VF.COSH : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """COSH(x)\r
     Returns the hyperbolic cosine of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := cosh(x);"""  \r
@@ -175,7 +175,7 @@ algorithm
 VF.TAN : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """TAN(x)\r
     Returns the tangent of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := tan(x);"""  \r
@@ -183,7 +183,7 @@ algorithm
 VF.TANH : SYSDYN.SysdynModelicaFunction\r
     L0.HasDescription """TANH(x)\r
     Returns the hyperbolic tangent of x."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := tanh(x);"""  \r
@@ -192,7 +192,7 @@ VF.LN : SYSDYN.SysdynModelicaFunction
     L0.HasDescription """LN(x)\r
     Returns the natural logarithm of x. \r
     In modelica log(x) is the natural logarighm and log10(x) is base 10 logarighm."""\r
-    SYSDYN.HasModelicaFunctionCode """    input Real x;\r
+    SYSDYN.SysdynModelicaFunction.modelicaFunctionCode """    input Real x;\r
     output Real z;\r
 algorithm\r
     z := log(x);"""  \r
index e74c5e93a5267b35bd49c232b6bfead33cc758ba..aa22c01875bcfbc0217f47242312565a870b55fa 100644 (file)
@@ -30,7 +30,7 @@ WM.dependency : L0.Template
             @L0.tag TAGS.AdminIsVisible\r
             @L0.tag TAGS.AdminIsFocusable\r
             STR.HasConnectionType SYSDYN.SysdynConnectionType\r
-            SYSDYN.angle %angle \r
+            SYSDYN.Dependency.angle %angle \r
             DIA.HasArrowConnector _ : DIA.Connector\r
                 SYSDYN.HasHeadTerminal %head\r
                 DIA.AreConnected _ : DIA.Connector \r
@@ -62,7 +62,7 @@ WM.conf_dependency_ref : L0.Template
             @L0.tag MOD.Mapped\r
             SYSDYN.HasHead %head\r
             SYSDYN.HasTail %tail\r
-            SYSDYN.RefersTo %ref                      \r
+            SYSDYN.Dependency.refersTo %ref                      \r
 \r
 \r
 \r
@@ -87,8 +87,8 @@ WM.WorkforceSymbol <T SYSDYN.ModuleSymbol
 WM.WorkModel : SYSDYN.SysdynModel\r
     L0.HasLabel "Work Model" \r
     SIMU.HasConfiguration WC\r
-    SYSDYN.HasStartTime 0.0 \r
-    SYSDYN.HasStopTime 24.0 \r
+    SYSDYN.SysdynModel.startTime 0.0 \r
+    SYSDYN.SysdynModel.stopTime 24.0 \r
     L0.IsLinkedTo SYSDYN\r
     L0.IsLinkedTo L0\r
     \r
@@ -113,26 +113,26 @@ WC.Work2 : WM.WorkModel.WorkModule
 // Parameters\r
 WC.Work1CompletionTime : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "15"      \r
+                SYSDYN.Expression.equation "15"      \r
 WC.Work2CompletionTime : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped    \r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "11"     \r
+                SYSDYN.Expression.equation "11"     \r
 WC.Work2Amount : SYSDYN.Auxiliary\r
       @L0.tag MOD.Mapped    \r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "700"     \r
+                SYSDYN.Expression.equation "700"     \r
         \r
 // Enumeration Test\r
 WC.EnumerationTest : SYSDYN.Enumeration\r
-    SYSDYN.HasEnumerationIndexes _ : SYSDYN.EnumerationIndexes\r
+    SYSDYN.Enumeration.enumerationIndexes _ : SYSDYN.EnumerationIndexes\r
         @L0.orderedSet\r
             _ : SYSDYN.EnumerationIndex\r
                 L0.HasName "Moro" : L0.String\r
@@ -154,10 +154,10 @@ WC.Work2WorkDone : SYSDYN.Input
 // Auxiliaries    \r
 WC.RequiredWorkingSpeedTotal : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "RequiredWorkingSpeed1+RequiredWorkingSpeed2"                            \r
+                SYSDYN.Expression.equation "RequiredWorkingSpeed1+RequiredWorkingSpeed2"                            \r
           \r
 WC.d1  : SYSDYN.Dependency\r
     @WM.conf_dependency_ref WC.TotalPossibleWorkingSpeedInput WC.Workforce WFC.PossibleWorkingSpeed        \r
@@ -291,103 +291,103 @@ WMC = WM.WorkModel.WorkModuleConfiguration : SYSDYN.Configuration
 // Parameters\r
 WMC.MaximumWorkingSpeed : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "500"      \r
+                SYSDYN.Expression.equation "500"      \r
 WMC.WorkQuality : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "0.9"  \r
+                SYSDYN.Expression.equation "0.9"  \r
                                      \r
 // Valves\r
 WMC.WorkingSpeed : SYSDYN.Valve\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "if ProjectIsReady  < 1 then WorkAllocation else 0" \r
+                SYSDYN.Expression.equation "if ProjectIsReady  < 1 then WorkAllocation else 0" \r
 WMC.ErrorsGenerated : SYSDYN.Valve\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "(1-WorkQuality)*WorkingSpeed"                                                          \r
+                SYSDYN.Expression.equation "(1-WorkQuality)*WorkingSpeed"                                                          \r
 WMC.ErrorsFoundRate : SYSDYN.Valve\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "Errors/ErrorsFoundTime"    \r
+                SYSDYN.Expression.equation "Errors/ErrorsFoundTime"    \r
 WMC.ProjectReadyness : SYSDYN.Valve\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "(xidz(WorkDone, ProjectWorkAmount, 0.0) - ProjectIsReady) / 0.08"                       \r
+                SYSDYN.Expression.equation "(xidz(WorkDone, ProjectWorkAmount, 0.0) - ProjectIsReady) / 0.08"                       \r
         \r
 \r
         \r
 // Stocks\r
 WMC.WorkToDo : SYSDYN.Stock\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.StockExpression\r
-                SYSDYN.HasInitialEquation "ProjectWorkAmount"      \r
+                SYSDYN.StockExpression.initialEquation "ProjectWorkAmount"      \r
 WMC.WorkDone : SYSDYN.Stock\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.StockExpression\r
-                SYSDYN.HasInitialEquation "0"     \r
+                SYSDYN.StockExpression.initialEquation "0"     \r
       @L0.tag SYSDYN.IsOutput\r
 WMC.Errors : SYSDYN.Stock\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.StockExpression\r
-                SYSDYN.HasInitialEquation "0"           \r
+                SYSDYN.StockExpression.initialEquation "0"           \r
 WMC.ProjectIsReady : SYSDYN.Stock\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.StockExpression\r
-                SYSDYN.HasInitialEquation "0"                 \r
+                SYSDYN.StockExpression.initialEquation "0"                 \r
         \r
 // Auxiliaries    \r
 WMC.TimeToDeadline : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "max(0, WorkCompletionTimeInput-time)"      \r
+                SYSDYN.Expression.equation "max(0, WorkCompletionTimeInput-time)"      \r
 WMC.RequiredWorkingSpeed : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
     @L0.tag SYSDYN.IsOutput\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "if ProjectIsReady < 1 then xidz(WorkToDo, TimeToDeadline, MaximumWorkingSpeed) else 0"      \r
+                SYSDYN.Expression.equation "if ProjectIsReady < 1 then xidz(WorkToDo, TimeToDeadline, MaximumWorkingSpeed) else 0"      \r
 WMC.WorkAllocation : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "xidz(RequiredWorkingSpeed, RequiredWorkingSpeedTotalInput, 0.0) * PossibleWorkingSpeedInput"      \r
+                SYSDYN.Expression.equation "xidz(RequiredWorkingSpeed, RequiredWorkingSpeedTotalInput, 0.0) * PossibleWorkingSpeedInput"      \r
 WMC.ErrorsFoundTime : SYSDYN.Auxiliary\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+    SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.WithLookupExpression\r
-                SYSDYN.HasEquation "xidz(WorkDone, ProjectWorkAmount, 0.0)"    \r
-                SYSDYN.HasLookup "{{0,5},{0.5,3},{1,0.5},{2,0.5}}"    \r
-                SYSDYN.HasMinX 0.0\r
-                SYSDYN.HasMaxX 5.0\r
-                SYSDYN.HasMinY 0.0\r
-                SYSDYN.HasMaxY 5.0\r
+                SYSDYN.Expression.equation "xidz(WorkDone, ProjectWorkAmount, 0.0)"    \r
+                SYSDYN.WithLookupExpression.lookup "{{0,5},{0.5,3},{1,0.5},{2,0.5}}"    \r
+                SYSDYN.WithLookupExpression.minX 0.0\r
+                SYSDYN.WithLookupExpression.maxX 5.0\r
+                SYSDYN.WithLookupExpression.minY 0.0\r
+                SYSDYN.WithLookupExpression.maxY 5.0\r
 \r
 // Inputs\r
 WMC.WorkCompletionTimeInput : SYSDYN.Input\r
@@ -398,7 +398,7 @@ WMC.RequiredWorkingSpeedTotalInput : SYSDYN.Input
     @L0.tag MOD.Mapped       \r
 WMC.ProjectWorkAmount : SYSDYN.Input\r
     @L0.tag MOD.Mapped\r
-    SYSDYN.HasDefaultInputValue 1000.0                                \r
+    SYSDYN.Input.defaultInputValue 1000.0                                \r
    \r
 WMC.c31 : SYSDYN.Cloud\r
 WMC.c33 : SYSDYN.Cloud\r
@@ -627,47 +627,47 @@ WFC = WM.WorkModel.WorkforceModuleConfiguration : SYSDYN.Configuration
 // Parameters\r
 WFC.TimeToAllocateResources : SYSDYN.Auxiliary\r
       @L0.tag MOD.Mapped\r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "2"     \r
+                SYSDYN.Expression.equation "2"     \r
 WFC.Productivity : SYSDYN.Auxiliary\r
       @L0.tag MOD.Mapped      \r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.ParameterExpression\r
-                SYSDYN.HasEquation "1"       \r
+                SYSDYN.Expression.equation "1"       \r
     \r
 // SYSDYN.Valve\r
 WFC.NetResources : SYSDYN.Valve\r
       @L0.tag MOD.Mapped\r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "(WorkForceRequired-WorkforceStock)/TimeToAllocateResources"       \r
+                SYSDYN.Expression.equation "(WorkForceRequired-WorkforceStock)/TimeToAllocateResources"       \r
 \r
 // Stock\r
 WFC.WorkforceStock : SYSDYN.Stock\r
       @L0.tag MOD.Mapped\r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.StockExpression\r
-                SYSDYN.HasInitialEquation "0"         \r
+                SYSDYN.StockExpression.initialEquation "0"         \r
     \r
 // Auxiliaries    \r
 WFC.WorkForceRequired : SYSDYN.Auxiliary\r
       @L0.tag MOD.Mapped\r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "RequiredWorkingSpeedInput/Productivity"      \r
+                SYSDYN.Expression.equation "RequiredWorkingSpeedInput/Productivity"      \r
 WFC.PossibleWorkingSpeed : SYSDYN.Auxiliary\r
       @L0.tag MOD.Mapped\r
       @L0.tag SYSDYN.IsOutput\r
-      SYSDYN.HasExpressions _ : SYSDYN.Expressions\r
+      SYSDYN.Variable.expressions _ : SYSDYN.Expressions\r
         @L0.orderedSet\r
             _ : SYSDYN.NormalExpression\r
-                SYSDYN.HasEquation "WorkforceStock*Productivity"      \r
+                SYSDYN.Expression.equation "WorkforceStock*Productivity"      \r
                 \r
 // Inputs\r
 WFC.RequiredWorkingSpeedInput : SYSDYN.Input\r
index dda9fead0c740270971641933aa5b45e6a1c4f00..ea85ab298707a01cf32d9507508c5bb5a0dbf98b 100644 (file)
@@ -20,6 +20,7 @@ public class SysdynResource {
     public final Resource AvailableVariableIndexes;\r
     public final Resource BarSeriesActionContext;\r
     public final Resource BarSeriesActionContext_Actions;\r
+    public final Resource BarSeriesActionContext_Actions_SeriesDropAction;\r
     public final Resource BarSeriesBrowseContext;\r
     public final Resource BarSeriesBrowseContext_SeriesChildRule;\r
     public final Resource BarSeriesBrowseContext_SeriesLabelDecorationRule;\r
@@ -82,124 +83,102 @@ public class SysdynResource {
     public final Resource DelayExpression_order_Inverse;\r
     public final Resource Dependency;\r
     public final Resource DependencyConnection;\r
+    public final Resource DependencyConnection_polarity;\r
+    public final Resource DependencyConnection_polarityLocation;\r
+    public final Resource DependencyConnection_polarityLocation_Inverse;\r
+    public final Resource DependencyConnection_polarity_Inverse;\r
+    public final Resource Dependency_angle;\r
+    public final Resource Dependency_angle_Inverse;\r
+    public final Resource Dependency_refersTo;\r
     public final Resource DiagramToCompositeMapping;\r
     public final Resource Enumeration;\r
     public final Resource EnumerationIndex;\r
+    public final Resource EnumerationIndex_showEnumerationIndexInCharts;\r
+    public final Resource EnumerationIndex_showEnumerationIndexInCharts_Inverse;\r
     public final Resource EnumerationIndexes;\r
     public final Resource EnumerationIndexes_Inverse;\r
     public final Resource EnumerationReplacement;\r
+    public final Resource Enumeration_enumerationIndexes;\r
+    public final Resource Enumeration_enumerationIndexes_Inverse;\r
+    public final Resource Enumeration_isReplaceable;\r
+    public final Resource Enumeration_isReplaceable_Inverse;\r
     public final Resource Experiment;\r
+    public final Resource Experiment_result;\r
+    public final Resource Experiment_result_Inverse;\r
     public final Resource ExportModuleTree;\r
     public final Resource Expression;\r
+    public final Resource Expression_arrayRange;\r
+    public final Resource Expression_arrayRange_Inverse;\r
+    public final Resource Expression_equation;\r
+    public final Resource Expression_equation_Inverse;\r
     public final Resource Expressions;\r
     public final Resource Expressions_Inverse;\r
     public final Resource ExternalFiles;\r
     public final Resource ExternalFunctionFile;\r
+    public final Resource ExternalFunctionFile_externalFile;\r
+    public final Resource ExternalFunctionFile_externalFile_Inverse;\r
     public final Resource Flow;\r
     public final Resource FlowConnection;\r
     public final Resource FunctionTree;\r
     public final Resource GameExperiment;\r
-    public final Resource HasActiveExpression;\r
-    public final Resource HasActiveExpression_Inverse;\r
-    public final Resource HasArrayIndexes;\r
-    public final Resource HasArrayIndexes_Inverse;\r
-    public final Resource HasArrayRange;\r
-    public final Resource HasArrayRange_Inverse;\r
-    public final Resource HasDefaultInputValue;\r
-    public final Resource HasDefaultInputValue_Inverse;\r
-    public final Resource HasEnumerationIndexes;\r
-    public final Resource HasEnumerationIndexes_Inverse;\r
-    public final Resource HasEquation;\r
     public final Resource HasEquationOrEmpty;\r
     public final Resource HasEquationOrEmpty_Inverse;\r
-    public final Resource HasEquation_Inverse;\r
-    public final Resource HasExpressions;\r
-    public final Resource HasExpressions_Inverse;\r
-    public final Resource HasExternalFile;\r
-    public final Resource HasExternalFile_Inverse;\r
     public final Resource HasHead;\r
     public final Resource HasHeadTerminal;\r
-    public final Resource HasInitialEquation;\r
-    public final Resource HasInitialEquation_Inverse;\r
-    public final Resource HasLookup;\r
-    public final Resource HasLookup_Inverse;\r
-    public final Resource HasMaxX;\r
-    public final Resource HasMaxX_Inverse;\r
-    public final Resource HasMaxY;\r
-    public final Resource HasMaxY_Inverse;\r
-    public final Resource HasMinX;\r
-    public final Resource HasMinX_Inverse;\r
-    public final Resource HasMinY;\r
-    public final Resource HasMinY_Inverse;\r
-    public final Resource HasModelicaFunctionCode;\r
-    public final Resource HasModelicaFunctionCode_Inverse;\r
-    public final Resource HasOutputInterval;\r
-    public final Resource HasOutputInterval_Inverse;\r
-    public final Resource HasParameterFile;\r
-    public final Resource HasParameterFile_Inverse;\r
     public final Resource HasRangeEnd;\r
     public final Resource HasRangeEnd_Inverse;\r
     public final Resource HasRangeStart;\r
     public final Resource HasRangeStart_Inverse;\r
     public final Resource HasRangeStep;\r
     public final Resource HasRangeStep_Inverse;\r
-    public final Resource HasRedeclaration;\r
-    public final Resource HasRedeclaration_Inverse;\r
-    public final Resource HasResult;\r
-    public final Resource HasResultFile;\r
-    public final Resource HasResultFile_Inverse;\r
-    public final Resource HasResult_Inverse;\r
-    public final Resource HasSolver;\r
-    public final Resource HasSolver_Inverse;\r
-    public final Resource HasStartTime;\r
-    public final Resource HasStartTime_Inverse;\r
-    public final Resource HasStopTime;\r
-    public final Resource HasStopTime_Inverse;\r
     public final Resource HasTail;\r
     public final Resource HasTailTerminal;\r
-    public final Resource HasTextLocation;\r
-    public final Resource HasTextLocation_Inverse;\r
-    public final Resource HasTolerance;\r
-    public final Resource HasTolerance_Inverse;\r
     public final Resource HasUnit;\r
     public final Resource HasUnit_Inverse;\r
-    public final Resource HasValveOrientation;\r
-    public final Resource HasValveOrientation_Inverse;\r
     public final Resource HistoryRealization;\r
     public final Resource Horizontal;\r
     public final Resource ImportModuleTree;\r
     public final Resource ImportedOntologies;\r
     public final Resource IndependentVariable;\r
+    public final Resource IndependentVariable_activeExpression;\r
+    public final Resource IndependentVariable_activeExpression_Inverse;\r
+    public final Resource IndependentVariable_rangeEnd;\r
+    public final Resource IndependentVariable_rangeEnd_Inverse;\r
+    public final Resource IndependentVariable_rangeStart;\r
+    public final Resource IndependentVariable_rangeStart_Inverse;\r
+    public final Resource IndependentVariable_rangeStep;\r
+    public final Resource IndependentVariable_rangeStep_Inverse;\r
+    public final Resource IndependentVariable_unit;\r
+    public final Resource IndependentVariable_unit_Inverse;\r
     public final Resource Input;\r
     public final Resource InputSymbol;\r
-    public final Resource IsHeadOf;\r
+    public final Resource Input_defaultInputValue;\r
+    public final Resource Input_defaultInputValue_Inverse;\r
     public final Resource IsHeadOfTerminal;\r
     public final Resource IsOutput;\r
-    public final Resource IsReplaceable;\r
-    public final Resource IsReplaceable_Inverse;\r
-    public final Resource IsTailOf;\r
     public final Resource IsTailOfTerminal;\r
     public final Resource IssueStyle;\r
     public final Resource Left;\r
     public final Resource Location;\r
     public final Resource LookupExpression;\r
+    public final Resource LookupExpression_lookup;\r
+    public final Resource LookupExpression_lookup_Inverse;\r
     public final Resource ModelBrowser;\r
     public final Resource Module;\r
     public final Resource ModuleSymbol;\r
+    public final Resource Module_redeclaration;\r
+    public final Resource Module_redeclaration_Inverse;\r
     public final Resource NormalExpression;\r
     public final Resource Orientation;\r
     public final Resource ParameterExpression;\r
     public final Resource PieSeriesActionContext;\r
     public final Resource PieSeriesActionContext_Actions;\r
+    public final Resource PieSeriesActionContext_Actions_SeriesDropAction;\r
     public final Resource PieSeriesBrowseContext;\r
     public final Resource PieSeriesBrowseContext_SeriesChildRule;\r
     public final Resource PieSeriesBrowseContext_SeriesLabelDecorationRule;\r
     public final Resource PieSeriesBrowseContext_SeriesLabelRule;\r
     public final Resource PlaybackExperiment;\r
-    public final Resource Polarity;\r
-    public final Resource PolarityLocation;\r
-    public final Resource PolarityLocation_Inverse;\r
-    public final Resource Polarity_Inverse;\r
     public final Resource Profiles;\r
     public final Resource Profiles_IssueWarnings;\r
     public final Resource Profiles_SimulationPlaybackColours;\r
@@ -213,6 +192,7 @@ public class SysdynResource {
     public final Resource ProjectActionContext_Actions_OpenWorkbook;\r
     public final Resource ProjectBrowseContext;\r
     public final Resource ProjectBrowseContext_BuiltinFunctions;\r
+    public final Resource ProjectBrowseContext_ExperimentsFolder;\r
     public final Resource ProjectBrowseContext_FunctionsFolder;\r
     public final Resource ProjectBrowseContext_ModuleContentChildRule;\r
     public final Resource ProjectBrowseContext_ModuleSymbol;\r
@@ -221,24 +201,27 @@ public class SysdynResource {
     public final Resource ProjectBrowseContext_ModulesFolder;\r
     public final Resource ProjectBrowseContext_SharedFunctionsFolder;\r
     public final Resource Redeclaration;\r
-    public final Resource RefersTo;\r
-    public final Resource ReplacedEnumeration;\r
-    public final Resource ReplacedEnumeration_Inverse;\r
-    public final Resource ReplacingEnumeration;\r
-    public final Resource ReplacingEnumeration_Inverse;\r
+    public final Resource Redeclaration_replacedEnumeration;\r
+    public final Resource Redeclaration_replacedEnumeration_Inverse;\r
+    public final Resource Redeclaration_replacingEnumeration;\r
+    public final Resource Redeclaration_replacingEnumeration_Inverse;\r
     public final Resource Result;\r
+    public final Resource Result_parameterFile;\r
+    public final Resource Result_parameterFile_Inverse;\r
+    public final Resource Result_resultFile;\r
+    public final Resource Result_resultFile_Inverse;\r
+    public final Resource Result_showResult;\r
     public final Resource Right;\r
     public final Resource SelectedSharedFunctionLibraries;\r
     public final Resource SharedFunctionOntology;\r
     public final Resource SharedModuleOntolofgy;\r
-    public final Resource ShowEnumerationIndexInCharts;\r
-    public final Resource ShowEnumerationIndexInCharts_Inverse;\r
-    public final Resource ShowResult;\r
     public final Resource SimulateOnChangeExperiment;\r
     public final Resource SimulationPlaybackProfile;\r
     public final Resource SimulationPlaybackStyle;\r
     public final Resource Stock;\r
     public final Resource StockExpression;\r
+    public final Resource StockExpression_initialEquation;\r
+    public final Resource StockExpression_initialEquation_Inverse;\r
     public final Resource StockSymbol;\r
     public final Resource SymbolReferences;\r
     public final Resource SymbolReferences_BasicSymbols;\r
@@ -248,8 +231,20 @@ public class SysdynResource {
     public final Resource SysdynDiagramModelingRules;\r
     public final Resource SysdynIssue;\r
     public final Resource SysdynModel;\r
+    public final Resource SysdynModel_outputInterval;\r
+    public final Resource SysdynModel_outputInterval_Inverse;\r
+    public final Resource SysdynModel_solver;\r
+    public final Resource SysdynModel_solver_Inverse;\r
+    public final Resource SysdynModel_startTime;\r
+    public final Resource SysdynModel_startTime_Inverse;\r
+    public final Resource SysdynModel_stopTime;\r
+    public final Resource SysdynModel_stopTime_Inverse;\r
+    public final Resource SysdynModel_tolerance;\r
+    public final Resource SysdynModel_tolerance_Inverse;\r
     public final Resource SysdynModelicaFunction;\r
     public final Resource SysdynModelicaFunctionLibrary;\r
+    public final Resource SysdynModelicaFunction_modelicaFunctionCode;\r
+    public final Resource SysdynModelicaFunction_modelicaFunctionCode_Inverse;\r
     public final Resource SysdynModuleLibrary;\r
     public final Resource SysdynOperationBrowser;\r
     public final Resource SysdynTerminal;\r
@@ -284,13 +279,31 @@ public class SysdynResource {
     public final Resource Validations_listeningConstraint;\r
     public final Resource Valve;\r
     public final Resource ValveSymbol;\r
+    public final Resource ValveSymbol_orientation;\r
+    public final Resource ValveSymbol_orientation_Inverse;\r
+    public final Resource ValveSymbol_textLocation;\r
+    public final Resource ValveSymbol_textLocation_Inverse;\r
     public final Resource Variable;\r
-    public final Resource Variable_Type;\r
-    public final Resource Variable_Type_Inverse;\r
+    public final Resource Variable_arrayIndexes;\r
+    public final Resource Variable_arrayIndexes_Inverse;\r
+    public final Resource Variable_expressions;\r
+    public final Resource Variable_expressions_Inverse;\r
+    public final Resource Variable_isHeadOf;\r
+    public final Resource Variable_isTailOf;\r
+    public final Resource Variable_type;\r
+    public final Resource Variable_type_Inverse;\r
+    public final Resource Variable_unit;\r
+    public final Resource Variable_unit_Inverse;\r
     public final Resource Vertical;\r
     public final Resource WithLookupExpression;\r
-    public final Resource angle;\r
-    public final Resource angle_Inverse;\r
+    public final Resource WithLookupExpression_expression;\r
+    public final Resource WithLookupExpression_expression_Inverse;\r
+    public final Resource WithLookupExpression_lookup;\r
+    public final Resource WithLookupExpression_lookup_Inverse;\r
+    public final Resource WithLookupExpression_maxX;\r
+    public final Resource WithLookupExpression_maxY;\r
+    public final Resource WithLookupExpression_minX;\r
+    public final Resource WithLookupExpression_minY;\r
         \r
     public static class URIs {\r
         public static final String AdditionalSymbols = "http://www.simantics.org/Sysdyn-1.1/AdditionalSymbols";\r
@@ -304,6 +317,7 @@ public class SysdynResource {
         public static final String AvailableVariableIndexes = "http://www.simantics.org/Sysdyn-1.1/AvailableVariableIndexes";\r
         public static final String BarSeriesActionContext = "http://www.simantics.org/Sysdyn-1.1/BarSeriesActionContext";\r
         public static final String BarSeriesActionContext_Actions = "http://www.simantics.org/Sysdyn-1.1/BarSeriesActionContext/Actions";\r
+        public static final String BarSeriesActionContext_Actions_SeriesDropAction = "http://www.simantics.org/Sysdyn-1.1/BarSeriesActionContext/Actions/SeriesDropAction";\r
         public static final String BarSeriesBrowseContext = "http://www.simantics.org/Sysdyn-1.1/BarSeriesBrowseContext";\r
         public static final String BarSeriesBrowseContext_SeriesChildRule = "http://www.simantics.org/Sysdyn-1.1/BarSeriesBrowseContext/SeriesChildRule";\r
         public static final String BarSeriesBrowseContext_SeriesLabelDecorationRule = "http://www.simantics.org/Sysdyn-1.1/BarSeriesBrowseContext/SeriesLabelDecorationRule";\r
@@ -366,124 +380,102 @@ public class SysdynResource {
         public static final String DelayExpression_order_Inverse = "http://www.simantics.org/Sysdyn-1.1/DelayExpression/order/Inverse";\r
         public static final String Dependency = "http://www.simantics.org/Sysdyn-1.1/Dependency";\r
         public static final String DependencyConnection = "http://www.simantics.org/Sysdyn-1.1/DependencyConnection";\r
+        public static final String DependencyConnection_polarity = "http://www.simantics.org/Sysdyn-1.1/DependencyConnection/polarity";\r
+        public static final String DependencyConnection_polarityLocation = "http://www.simantics.org/Sysdyn-1.1/DependencyConnection/polarityLocation";\r
+        public static final String DependencyConnection_polarityLocation_Inverse = "http://www.simantics.org/Sysdyn-1.1/DependencyConnection/polarityLocation/Inverse";\r
+        public static final String DependencyConnection_polarity_Inverse = "http://www.simantics.org/Sysdyn-1.1/DependencyConnection/polarity/Inverse";\r
+        public static final String Dependency_angle = "http://www.simantics.org/Sysdyn-1.1/Dependency/angle";\r
+        public static final String Dependency_angle_Inverse = "http://www.simantics.org/Sysdyn-1.1/Dependency/angle/Inverse";\r
+        public static final String Dependency_refersTo = "http://www.simantics.org/Sysdyn-1.1/Dependency/refersTo";\r
         public static final String DiagramToCompositeMapping = "http://www.simantics.org/Sysdyn-1.1/DiagramToCompositeMapping";\r
         public static final String Enumeration = "http://www.simantics.org/Sysdyn-1.1/Enumeration";\r
         public static final String EnumerationIndex = "http://www.simantics.org/Sysdyn-1.1/EnumerationIndex";\r
+        public static final String EnumerationIndex_showEnumerationIndexInCharts = "http://www.simantics.org/Sysdyn-1.1/EnumerationIndex/showEnumerationIndexInCharts";\r
+        public static final String EnumerationIndex_showEnumerationIndexInCharts_Inverse = "http://www.simantics.org/Sysdyn-1.1/EnumerationIndex/showEnumerationIndexInCharts/Inverse";\r
         public static final String EnumerationIndexes = "http://www.simantics.org/Sysdyn-1.1/EnumerationIndexes";\r
         public static final String EnumerationIndexes_Inverse = "http://www.simantics.org/Sysdyn-1.1/EnumerationIndexes/Inverse";\r
         public static final String EnumerationReplacement = "http://www.simantics.org/Sysdyn-1.1/EnumerationReplacement";\r
+        public static final String Enumeration_enumerationIndexes = "http://www.simantics.org/Sysdyn-1.1/Enumeration/enumerationIndexes";\r
+        public static final String Enumeration_enumerationIndexes_Inverse = "http://www.simantics.org/Sysdyn-1.1/Enumeration/enumerationIndexes/Inverse";\r
+        public static final String Enumeration_isReplaceable = "http://www.simantics.org/Sysdyn-1.1/Enumeration/isReplaceable";\r
+        public static final String Enumeration_isReplaceable_Inverse = "http://www.simantics.org/Sysdyn-1.1/Enumeration/isReplaceable/Inverse";\r
         public static final String Experiment = "http://www.simantics.org/Sysdyn-1.1/Experiment";\r
+        public static final String Experiment_result = "http://www.simantics.org/Sysdyn-1.1/Experiment/result";\r
+        public static final String Experiment_result_Inverse = "http://www.simantics.org/Sysdyn-1.1/Experiment/result/Inverse";\r
         public static final String ExportModuleTree = "http://www.simantics.org/Sysdyn-1.1/ExportModuleTree";\r
         public static final String Expression = "http://www.simantics.org/Sysdyn-1.1/Expression";\r
+        public static final String Expression_arrayRange = "http://www.simantics.org/Sysdyn-1.1/Expression/arrayRange";\r
+        public static final String Expression_arrayRange_Inverse = "http://www.simantics.org/Sysdyn-1.1/Expression/arrayRange/Inverse";\r
+        public static final String Expression_equation = "http://www.simantics.org/Sysdyn-1.1/Expression/equation";\r
+        public static final String Expression_equation_Inverse = "http://www.simantics.org/Sysdyn-1.1/Expression/equation/Inverse";\r
         public static final String Expressions = "http://www.simantics.org/Sysdyn-1.1/Expressions";\r
         public static final String Expressions_Inverse = "http://www.simantics.org/Sysdyn-1.1/Expressions/Inverse";\r
         public static final String ExternalFiles = "http://www.simantics.org/Sysdyn-1.1/ExternalFiles";\r
         public static final String ExternalFunctionFile = "http://www.simantics.org/Sysdyn-1.1/ExternalFunctionFile";\r
+        public static final String ExternalFunctionFile_externalFile = "http://www.simantics.org/Sysdyn-1.1/ExternalFunctionFile/externalFile";\r
+        public static final String ExternalFunctionFile_externalFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/ExternalFunctionFile/externalFile/Inverse";\r
         public static final String Flow = "http://www.simantics.org/Sysdyn-1.1/Flow";\r
         public static final String FlowConnection = "http://www.simantics.org/Sysdyn-1.1/FlowConnection";\r
         public static final String FunctionTree = "http://www.simantics.org/Sysdyn-1.1/FunctionTree";\r
         public static final String GameExperiment = "http://www.simantics.org/Sysdyn-1.1/GameExperiment";\r
-        public static final String HasActiveExpression = "http://www.simantics.org/Sysdyn-1.1/HasActiveExpression";\r
-        public static final String HasActiveExpression_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasActiveExpression/Inverse";\r
-        public static final String HasArrayIndexes = "http://www.simantics.org/Sysdyn-1.1/HasArrayIndexes";\r
-        public static final String HasArrayIndexes_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasArrayIndexes/Inverse";\r
-        public static final String HasArrayRange = "http://www.simantics.org/Sysdyn-1.1/HasArrayRange";\r
-        public static final String HasArrayRange_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasArrayRange/Inverse";\r
-        public static final String HasDefaultInputValue = "http://www.simantics.org/Sysdyn-1.1/HasDefaultInputValue";\r
-        public static final String HasDefaultInputValue_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasDefaultInputValue/Inverse";\r
-        public static final String HasEnumerationIndexes = "http://www.simantics.org/Sysdyn-1.1/HasEnumerationIndexes";\r
-        public static final String HasEnumerationIndexes_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasEnumerationIndexes/Inverse";\r
-        public static final String HasEquation = "http://www.simantics.org/Sysdyn-1.1/HasEquation";\r
         public static final String HasEquationOrEmpty = "http://www.simantics.org/Sysdyn-1.1/HasEquationOrEmpty";\r
         public static final String HasEquationOrEmpty_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasEquationOrEmpty/Inverse";\r
-        public static final String HasEquation_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasEquation/Inverse";\r
-        public static final String HasExpressions = "http://www.simantics.org/Sysdyn-1.1/HasExpressions";\r
-        public static final String HasExpressions_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasExpressions/Inverse";\r
-        public static final String HasExternalFile = "http://www.simantics.org/Sysdyn-1.1/HasExternalFile";\r
-        public static final String HasExternalFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasExternalFile/Inverse";\r
         public static final String HasHead = "http://www.simantics.org/Sysdyn-1.1/HasHead";\r
         public static final String HasHeadTerminal = "http://www.simantics.org/Sysdyn-1.1/HasHeadTerminal";\r
-        public static final String HasInitialEquation = "http://www.simantics.org/Sysdyn-1.1/HasInitialEquation";\r
-        public static final String HasInitialEquation_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasInitialEquation/Inverse";\r
-        public static final String HasLookup = "http://www.simantics.org/Sysdyn-1.1/HasLookup";\r
-        public static final String HasLookup_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasLookup/Inverse";\r
-        public static final String HasMaxX = "http://www.simantics.org/Sysdyn-1.1/HasMaxX";\r
-        public static final String HasMaxX_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasMaxX/Inverse";\r
-        public static final String HasMaxY = "http://www.simantics.org/Sysdyn-1.1/HasMaxY";\r
-        public static final String HasMaxY_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasMaxY/Inverse";\r
-        public static final String HasMinX = "http://www.simantics.org/Sysdyn-1.1/HasMinX";\r
-        public static final String HasMinX_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasMinX/Inverse";\r
-        public static final String HasMinY = "http://www.simantics.org/Sysdyn-1.1/HasMinY";\r
-        public static final String HasMinY_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasMinY/Inverse";\r
-        public static final String HasModelicaFunctionCode = "http://www.simantics.org/Sysdyn-1.1/HasModelicaFunctionCode";\r
-        public static final String HasModelicaFunctionCode_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasModelicaFunctionCode/Inverse";\r
-        public static final String HasOutputInterval = "http://www.simantics.org/Sysdyn-1.1/HasOutputInterval";\r
-        public static final String HasOutputInterval_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasOutputInterval/Inverse";\r
-        public static final String HasParameterFile = "http://www.simantics.org/Sysdyn-1.1/HasParameterFile";\r
-        public static final String HasParameterFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasParameterFile/Inverse";\r
         public static final String HasRangeEnd = "http://www.simantics.org/Sysdyn-1.1/HasRangeEnd";\r
         public static final String HasRangeEnd_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasRangeEnd/Inverse";\r
         public static final String HasRangeStart = "http://www.simantics.org/Sysdyn-1.1/HasRangeStart";\r
         public static final String HasRangeStart_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasRangeStart/Inverse";\r
         public static final String HasRangeStep = "http://www.simantics.org/Sysdyn-1.1/HasRangeStep";\r
         public static final String HasRangeStep_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasRangeStep/Inverse";\r
-        public static final String HasRedeclaration = "http://www.simantics.org/Sysdyn-1.1/HasRedeclaration";\r
-        public static final String HasRedeclaration_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasRedeclaration/Inverse";\r
-        public static final String HasResult = "http://www.simantics.org/Sysdyn-1.1/HasResult";\r
-        public static final String HasResultFile = "http://www.simantics.org/Sysdyn-1.1/HasResultFile";\r
-        public static final String HasResultFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasResultFile/Inverse";\r
-        public static final String HasResult_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasResult/Inverse";\r
-        public static final String HasSolver = "http://www.simantics.org/Sysdyn-1.1/HasSolver";\r
-        public static final String HasSolver_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasSolver/Inverse";\r
-        public static final String HasStartTime = "http://www.simantics.org/Sysdyn-1.1/HasStartTime";\r
-        public static final String HasStartTime_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasStartTime/Inverse";\r
-        public static final String HasStopTime = "http://www.simantics.org/Sysdyn-1.1/HasStopTime";\r
-        public static final String HasStopTime_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasStopTime/Inverse";\r
         public static final String HasTail = "http://www.simantics.org/Sysdyn-1.1/HasTail";\r
         public static final String HasTailTerminal = "http://www.simantics.org/Sysdyn-1.1/HasTailTerminal";\r
-        public static final String HasTextLocation = "http://www.simantics.org/Sysdyn-1.1/HasTextLocation";\r
-        public static final String HasTextLocation_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasTextLocation/Inverse";\r
-        public static final String HasTolerance = "http://www.simantics.org/Sysdyn-1.1/HasTolerance";\r
-        public static final String HasTolerance_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasTolerance/Inverse";\r
         public static final String HasUnit = "http://www.simantics.org/Sysdyn-1.1/HasUnit";\r
         public static final String HasUnit_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasUnit/Inverse";\r
-        public static final String HasValveOrientation = "http://www.simantics.org/Sysdyn-1.1/HasValveOrientation";\r
-        public static final String HasValveOrientation_Inverse = "http://www.simantics.org/Sysdyn-1.1/HasValveOrientation/Inverse";\r
         public static final String HistoryRealization = "http://www.simantics.org/Sysdyn-1.1/HistoryRealization";\r
         public static final String Horizontal = "http://www.simantics.org/Sysdyn-1.1/Horizontal";\r
         public static final String ImportModuleTree = "http://www.simantics.org/Sysdyn-1.1/ImportModuleTree";\r
         public static final String ImportedOntologies = "http://www.simantics.org/Sysdyn-1.1/ImportedOntologies";\r
         public static final String IndependentVariable = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable";\r
+        public static final String IndependentVariable_activeExpression = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/activeExpression";\r
+        public static final String IndependentVariable_activeExpression_Inverse = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/activeExpression/Inverse";\r
+        public static final String IndependentVariable_rangeEnd = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeEnd";\r
+        public static final String IndependentVariable_rangeEnd_Inverse = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeEnd/Inverse";\r
+        public static final String IndependentVariable_rangeStart = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeStart";\r
+        public static final String IndependentVariable_rangeStart_Inverse = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeStart/Inverse";\r
+        public static final String IndependentVariable_rangeStep = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeStep";\r
+        public static final String IndependentVariable_rangeStep_Inverse = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/rangeStep/Inverse";\r
+        public static final String IndependentVariable_unit = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/unit";\r
+        public static final String IndependentVariable_unit_Inverse = "http://www.simantics.org/Sysdyn-1.1/IndependentVariable/unit/Inverse";\r
         public static final String Input = "http://www.simantics.org/Sysdyn-1.1/Input";\r
         public static final String InputSymbol = "http://www.simantics.org/Sysdyn-1.1/InputSymbol";\r
-        public static final String IsHeadOf = "http://www.simantics.org/Sysdyn-1.1/IsHeadOf";\r
+        public static final String Input_defaultInputValue = "http://www.simantics.org/Sysdyn-1.1/Input/defaultInputValue";\r
+        public static final String Input_defaultInputValue_Inverse = "http://www.simantics.org/Sysdyn-1.1/Input/defaultInputValue/Inverse";\r
         public static final String IsHeadOfTerminal = "http://www.simantics.org/Sysdyn-1.1/IsHeadOfTerminal";\r
         public static final String IsOutput = "http://www.simantics.org/Sysdyn-1.1/IsOutput";\r
-        public static final String IsReplaceable = "http://www.simantics.org/Sysdyn-1.1/IsReplaceable";\r
-        public static final String IsReplaceable_Inverse = "http://www.simantics.org/Sysdyn-1.1/IsReplaceable/Inverse";\r
-        public static final String IsTailOf = "http://www.simantics.org/Sysdyn-1.1/IsTailOf";\r
         public static final String IsTailOfTerminal = "http://www.simantics.org/Sysdyn-1.1/IsTailOfTerminal";\r
         public static final String IssueStyle = "http://www.simantics.org/Sysdyn-1.1/IssueStyle";\r
         public static final String Left = "http://www.simantics.org/Sysdyn-1.1/Left";\r
         public static final String Location = "http://www.simantics.org/Sysdyn-1.1/Location";\r
         public static final String LookupExpression = "http://www.simantics.org/Sysdyn-1.1/LookupExpression";\r
+        public static final String LookupExpression_lookup = "http://www.simantics.org/Sysdyn-1.1/LookupExpression/lookup";\r
+        public static final String LookupExpression_lookup_Inverse = "http://www.simantics.org/Sysdyn-1.1/LookupExpression/lookup/Inverse";\r
         public static final String ModelBrowser = "http://www.simantics.org/Sysdyn-1.1/ModelBrowser";\r
         public static final String Module = "http://www.simantics.org/Sysdyn-1.1/Module";\r
         public static final String ModuleSymbol = "http://www.simantics.org/Sysdyn-1.1/ModuleSymbol";\r
+        public static final String Module_redeclaration = "http://www.simantics.org/Sysdyn-1.1/Module/redeclaration";\r
+        public static final String Module_redeclaration_Inverse = "http://www.simantics.org/Sysdyn-1.1/Module/redeclaration/Inverse";\r
         public static final String NormalExpression = "http://www.simantics.org/Sysdyn-1.1/NormalExpression";\r
         public static final String Orientation = "http://www.simantics.org/Sysdyn-1.1/Orientation";\r
         public static final String ParameterExpression = "http://www.simantics.org/Sysdyn-1.1/ParameterExpression";\r
         public static final String PieSeriesActionContext = "http://www.simantics.org/Sysdyn-1.1/PieSeriesActionContext";\r
         public static final String PieSeriesActionContext_Actions = "http://www.simantics.org/Sysdyn-1.1/PieSeriesActionContext/Actions";\r
+        public static final String PieSeriesActionContext_Actions_SeriesDropAction = "http://www.simantics.org/Sysdyn-1.1/PieSeriesActionContext/Actions/SeriesDropAction";\r
         public static final String PieSeriesBrowseContext = "http://www.simantics.org/Sysdyn-1.1/PieSeriesBrowseContext";\r
         public static final String PieSeriesBrowseContext_SeriesChildRule = "http://www.simantics.org/Sysdyn-1.1/PieSeriesBrowseContext/SeriesChildRule";\r
         public static final String PieSeriesBrowseContext_SeriesLabelDecorationRule = "http://www.simantics.org/Sysdyn-1.1/PieSeriesBrowseContext/SeriesLabelDecorationRule";\r
         public static final String PieSeriesBrowseContext_SeriesLabelRule = "http://www.simantics.org/Sysdyn-1.1/PieSeriesBrowseContext/SeriesLabelRule";\r
         public static final String PlaybackExperiment = "http://www.simantics.org/Sysdyn-1.1/PlaybackExperiment";\r
-        public static final String Polarity = "http://www.simantics.org/Sysdyn-1.1/Polarity";\r
-        public static final String PolarityLocation = "http://www.simantics.org/Sysdyn-1.1/PolarityLocation";\r
-        public static final String PolarityLocation_Inverse = "http://www.simantics.org/Sysdyn-1.1/PolarityLocation/Inverse";\r
-        public static final String Polarity_Inverse = "http://www.simantics.org/Sysdyn-1.1/Polarity/Inverse";\r
         public static final String Profiles = "http://www.simantics.org/Sysdyn-1.1/Profiles";\r
         public static final String Profiles_IssueWarnings = "http://www.simantics.org/Sysdyn-1.1/Profiles/IssueWarnings";\r
         public static final String Profiles_SimulationPlaybackColours = "http://www.simantics.org/Sysdyn-1.1/Profiles/SimulationPlaybackColours";\r
@@ -497,6 +489,7 @@ public class SysdynResource {
         public static final String ProjectActionContext_Actions_OpenWorkbook = "http://www.simantics.org/Sysdyn-1.1/ProjectActionContext/Actions/OpenWorkbook";\r
         public static final String ProjectBrowseContext = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext";\r
         public static final String ProjectBrowseContext_BuiltinFunctions = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/BuiltinFunctions";\r
+        public static final String ProjectBrowseContext_ExperimentsFolder = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/ExperimentsFolder";\r
         public static final String ProjectBrowseContext_FunctionsFolder = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/FunctionsFolder";\r
         public static final String ProjectBrowseContext_ModuleContentChildRule = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/ModuleContentChildRule";\r
         public static final String ProjectBrowseContext_ModuleSymbol = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/ModuleSymbol";\r
@@ -505,24 +498,27 @@ public class SysdynResource {
         public static final String ProjectBrowseContext_ModulesFolder = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/ModulesFolder";\r
         public static final String ProjectBrowseContext_SharedFunctionsFolder = "http://www.simantics.org/Sysdyn-1.1/ProjectBrowseContext/SharedFunctionsFolder";\r
         public static final String Redeclaration = "http://www.simantics.org/Sysdyn-1.1/Redeclaration";\r
-        public static final String RefersTo = "http://www.simantics.org/Sysdyn-1.1/RefersTo";\r
-        public static final String ReplacedEnumeration = "http://www.simantics.org/Sysdyn-1.1/ReplacedEnumeration";\r
-        public static final String ReplacedEnumeration_Inverse = "http://www.simantics.org/Sysdyn-1.1/ReplacedEnumeration/Inverse";\r
-        public static final String ReplacingEnumeration = "http://www.simantics.org/Sysdyn-1.1/ReplacingEnumeration";\r
-        public static final String ReplacingEnumeration_Inverse = "http://www.simantics.org/Sysdyn-1.1/ReplacingEnumeration/Inverse";\r
+        public static final String Redeclaration_replacedEnumeration = "http://www.simantics.org/Sysdyn-1.1/Redeclaration/replacedEnumeration";\r
+        public static final String Redeclaration_replacedEnumeration_Inverse = "http://www.simantics.org/Sysdyn-1.1/Redeclaration/replacedEnumeration/Inverse";\r
+        public static final String Redeclaration_replacingEnumeration = "http://www.simantics.org/Sysdyn-1.1/Redeclaration/replacingEnumeration";\r
+        public static final String Redeclaration_replacingEnumeration_Inverse = "http://www.simantics.org/Sysdyn-1.1/Redeclaration/replacingEnumeration/Inverse";\r
         public static final String Result = "http://www.simantics.org/Sysdyn-1.1/Result";\r
+        public static final String Result_parameterFile = "http://www.simantics.org/Sysdyn-1.1/Result/parameterFile";\r
+        public static final String Result_parameterFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/Result/parameterFile/Inverse";\r
+        public static final String Result_resultFile = "http://www.simantics.org/Sysdyn-1.1/Result/resultFile";\r
+        public static final String Result_resultFile_Inverse = "http://www.simantics.org/Sysdyn-1.1/Result/resultFile/Inverse";\r
+        public static final String Result_showResult = "http://www.simantics.org/Sysdyn-1.1/Result/showResult";\r
         public static final String Right = "http://www.simantics.org/Sysdyn-1.1/Right";\r
         public static final String SelectedSharedFunctionLibraries = "http://www.simantics.org/Sysdyn-1.1/SelectedSharedFunctionLibraries";\r
         public static final String SharedFunctionOntology = "http://www.simantics.org/Sysdyn-1.1/SharedFunctionOntology";\r
         public static final String SharedModuleOntolofgy = "http://www.simantics.org/Sysdyn-1.1/SharedModuleOntolofgy";\r
-        public static final String ShowEnumerationIndexInCharts = "http://www.simantics.org/Sysdyn-1.1/ShowEnumerationIndexInCharts";\r
-        public static final String ShowEnumerationIndexInCharts_Inverse = "http://www.simantics.org/Sysdyn-1.1/ShowEnumerationIndexInCharts/Inverse";\r
-        public static final String ShowResult = "http://www.simantics.org/Sysdyn-1.1/ShowResult";\r
         public static final String SimulateOnChangeExperiment = "http://www.simantics.org/Sysdyn-1.1/SimulateOnChangeExperiment";\r
         public static final String SimulationPlaybackProfile = "http://www.simantics.org/Sysdyn-1.1/SimulationPlaybackProfile";\r
         public static final String SimulationPlaybackStyle = "http://www.simantics.org/Sysdyn-1.1/SimulationPlaybackStyle";\r
         public static final String Stock = "http://www.simantics.org/Sysdyn-1.1/Stock";\r
         public static final String StockExpression = "http://www.simantics.org/Sysdyn-1.1/StockExpression";\r
+        public static final String StockExpression_initialEquation = "http://www.simantics.org/Sysdyn-1.1/StockExpression/initialEquation";\r
+        public static final String StockExpression_initialEquation_Inverse = "http://www.simantics.org/Sysdyn-1.1/StockExpression/initialEquation/Inverse";\r
         public static final String StockSymbol = "http://www.simantics.org/Sysdyn-1.1/StockSymbol";\r
         public static final String SymbolReferences = "http://www.simantics.org/Sysdyn-1.1/SymbolReferences";\r
         public static final String SymbolReferences_BasicSymbols = "http://www.simantics.org/Sysdyn-1.1/SymbolReferences/BasicSymbols";\r
@@ -532,8 +528,20 @@ public class SysdynResource {
         public static final String SysdynDiagramModelingRules = "http://www.simantics.org/Sysdyn-1.1/SysdynDiagramModelingRules";\r
         public static final String SysdynIssue = "http://www.simantics.org/Sysdyn-1.1/SysdynIssue";\r
         public static final String SysdynModel = "http://www.simantics.org/Sysdyn-1.1/SysdynModel";\r
+        public static final String SysdynModel_outputInterval = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/outputInterval";\r
+        public static final String SysdynModel_outputInterval_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/outputInterval/Inverse";\r
+        public static final String SysdynModel_solver = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/solver";\r
+        public static final String SysdynModel_solver_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/solver/Inverse";\r
+        public static final String SysdynModel_startTime = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/startTime";\r
+        public static final String SysdynModel_startTime_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/startTime/Inverse";\r
+        public static final String SysdynModel_stopTime = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/stopTime";\r
+        public static final String SysdynModel_stopTime_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/stopTime/Inverse";\r
+        public static final String SysdynModel_tolerance = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/tolerance";\r
+        public static final String SysdynModel_tolerance_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModel/tolerance/Inverse";\r
         public static final String SysdynModelicaFunction = "http://www.simantics.org/Sysdyn-1.1/SysdynModelicaFunction";\r
         public static final String SysdynModelicaFunctionLibrary = "http://www.simantics.org/Sysdyn-1.1/SysdynModelicaFunctionLibrary";\r
+        public static final String SysdynModelicaFunction_modelicaFunctionCode = "http://www.simantics.org/Sysdyn-1.1/SysdynModelicaFunction/modelicaFunctionCode";\r
+        public static final String SysdynModelicaFunction_modelicaFunctionCode_Inverse = "http://www.simantics.org/Sysdyn-1.1/SysdynModelicaFunction/modelicaFunctionCode/Inverse";\r
         public static final String SysdynModuleLibrary = "http://www.simantics.org/Sysdyn-1.1/SysdynModuleLibrary";\r
         public static final String SysdynOperationBrowser = "http://www.simantics.org/Sysdyn-1.1/SysdynOperationBrowser";\r
         public static final String SysdynTerminal = "http://www.simantics.org/Sysdyn-1.1/SysdynTerminal";\r
@@ -568,13 +576,31 @@ public class SysdynResource {
         public static final String Validations_listeningConstraint = "http://www.simantics.org/Sysdyn-1.1/Validations/listeningConstraint";\r
         public static final String Valve = "http://www.simantics.org/Sysdyn-1.1/Valve";\r
         public static final String ValveSymbol = "http://www.simantics.org/Sysdyn-1.1/ValveSymbol";\r
+        public static final String ValveSymbol_orientation = "http://www.simantics.org/Sysdyn-1.1/ValveSymbol/orientation";\r
+        public static final String ValveSymbol_orientation_Inverse = "http://www.simantics.org/Sysdyn-1.1/ValveSymbol/orientation/Inverse";\r
+        public static final String ValveSymbol_textLocation = "http://www.simantics.org/Sysdyn-1.1/ValveSymbol/textLocation";\r
+        public static final String ValveSymbol_textLocation_Inverse = "http://www.simantics.org/Sysdyn-1.1/ValveSymbol/textLocation/Inverse";\r
         public static final String Variable = "http://www.simantics.org/Sysdyn-1.1/Variable";\r
-        public static final String Variable_Type = "http://www.simantics.org/Sysdyn-1.1/Variable/Type";\r
-        public static final String Variable_Type_Inverse = "http://www.simantics.org/Sysdyn-1.1/Variable/Type/Inverse";\r
+        public static final String Variable_arrayIndexes = "http://www.simantics.org/Sysdyn-1.1/Variable/arrayIndexes";\r
+        public static final String Variable_arrayIndexes_Inverse = "http://www.simantics.org/Sysdyn-1.1/Variable/arrayIndexes/Inverse";\r
+        public static final String Variable_expressions = "http://www.simantics.org/Sysdyn-1.1/Variable/expressions";\r
+        public static final String Variable_expressions_Inverse = "http://www.simantics.org/Sysdyn-1.1/Variable/expressions/Inverse";\r
+        public static final String Variable_isHeadOf = "http://www.simantics.org/Sysdyn-1.1/Variable/isHeadOf";\r
+        public static final String Variable_isTailOf = "http://www.simantics.org/Sysdyn-1.1/Variable/isTailOf";\r
+        public static final String Variable_type = "http://www.simantics.org/Sysdyn-1.1/Variable/type";\r
+        public static final String Variable_type_Inverse = "http://www.simantics.org/Sysdyn-1.1/Variable/type/Inverse";\r
+        public static final String Variable_unit = "http://www.simantics.org/Sysdyn-1.1/Variable/unit";\r
+        public static final String Variable_unit_Inverse = "http://www.simantics.org/Sysdyn-1.1/Variable/unit/Inverse";\r
         public static final String Vertical = "http://www.simantics.org/Sysdyn-1.1/Vertical";\r
         public static final String WithLookupExpression = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression";\r
-        public static final String angle = "http://www.simantics.org/Sysdyn-1.1/angle";\r
-        public static final String angle_Inverse = "http://www.simantics.org/Sysdyn-1.1/angle/Inverse";\r
+        public static final String WithLookupExpression_expression = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/expression";\r
+        public static final String WithLookupExpression_expression_Inverse = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/expression/Inverse";\r
+        public static final String WithLookupExpression_lookup = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/lookup";\r
+        public static final String WithLookupExpression_lookup_Inverse = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/lookup/Inverse";\r
+        public static final String WithLookupExpression_maxX = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/maxX";\r
+        public static final String WithLookupExpression_maxY = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/maxY";\r
+        public static final String WithLookupExpression_minX = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/minX";\r
+        public static final String WithLookupExpression_minY = "http://www.simantics.org/Sysdyn-1.1/WithLookupExpression/minY";\r
     }\r
     \r
     public static Resource getResourceOrNull(ReadGraph graph, String uri) {\r
@@ -598,6 +624,7 @@ public class SysdynResource {
         AvailableVariableIndexes = getResourceOrNull(graph, URIs.AvailableVariableIndexes);\r
         BarSeriesActionContext = getResourceOrNull(graph, URIs.BarSeriesActionContext);\r
         BarSeriesActionContext_Actions = getResourceOrNull(graph, URIs.BarSeriesActionContext_Actions);\r
+        BarSeriesActionContext_Actions_SeriesDropAction = getResourceOrNull(graph, URIs.BarSeriesActionContext_Actions_SeriesDropAction);\r
         BarSeriesBrowseContext = getResourceOrNull(graph, URIs.BarSeriesBrowseContext);\r
         BarSeriesBrowseContext_SeriesChildRule = getResourceOrNull(graph, URIs.BarSeriesBrowseContext_SeriesChildRule);\r
         BarSeriesBrowseContext_SeriesLabelDecorationRule = getResourceOrNull(graph, URIs.BarSeriesBrowseContext_SeriesLabelDecorationRule);\r
@@ -660,124 +687,102 @@ public class SysdynResource {
         DelayExpression_order_Inverse = getResourceOrNull(graph, URIs.DelayExpression_order_Inverse);\r
         Dependency = getResourceOrNull(graph, URIs.Dependency);\r
         DependencyConnection = getResourceOrNull(graph, URIs.DependencyConnection);\r
+        DependencyConnection_polarity = getResourceOrNull(graph, URIs.DependencyConnection_polarity);\r
+        DependencyConnection_polarityLocation = getResourceOrNull(graph, URIs.DependencyConnection_polarityLocation);\r
+        DependencyConnection_polarityLocation_Inverse = getResourceOrNull(graph, URIs.DependencyConnection_polarityLocation_Inverse);\r
+        DependencyConnection_polarity_Inverse = getResourceOrNull(graph, URIs.DependencyConnection_polarity_Inverse);\r
+        Dependency_angle = getResourceOrNull(graph, URIs.Dependency_angle);\r
+        Dependency_angle_Inverse = getResourceOrNull(graph, URIs.Dependency_angle_Inverse);\r
+        Dependency_refersTo = getResourceOrNull(graph, URIs.Dependency_refersTo);\r
         DiagramToCompositeMapping = getResourceOrNull(graph, URIs.DiagramToCompositeMapping);\r
         Enumeration = getResourceOrNull(graph, URIs.Enumeration);\r
         EnumerationIndex = getResourceOrNull(graph, URIs.EnumerationIndex);\r
+        EnumerationIndex_showEnumerationIndexInCharts = getResourceOrNull(graph, URIs.EnumerationIndex_showEnumerationIndexInCharts);\r
+        EnumerationIndex_showEnumerationIndexInCharts_Inverse = getResourceOrNull(graph, URIs.EnumerationIndex_showEnumerationIndexInCharts_Inverse);\r
         EnumerationIndexes = getResourceOrNull(graph, URIs.EnumerationIndexes);\r
         EnumerationIndexes_Inverse = getResourceOrNull(graph, URIs.EnumerationIndexes_Inverse);\r
         EnumerationReplacement = getResourceOrNull(graph, URIs.EnumerationReplacement);\r
+        Enumeration_enumerationIndexes = getResourceOrNull(graph, URIs.Enumeration_enumerationIndexes);\r
+        Enumeration_enumerationIndexes_Inverse = getResourceOrNull(graph, URIs.Enumeration_enumerationIndexes_Inverse);\r
+        Enumeration_isReplaceable = getResourceOrNull(graph, URIs.Enumeration_isReplaceable);\r
+        Enumeration_isReplaceable_Inverse = getResourceOrNull(graph, URIs.Enumeration_isReplaceable_Inverse);\r
         Experiment = getResourceOrNull(graph, URIs.Experiment);\r
+        Experiment_result = getResourceOrNull(graph, URIs.Experiment_result);\r
+        Experiment_result_Inverse = getResourceOrNull(graph, URIs.Experiment_result_Inverse);\r
         ExportModuleTree = getResourceOrNull(graph, URIs.ExportModuleTree);\r
         Expression = getResourceOrNull(graph, URIs.Expression);\r
+        Expression_arrayRange = getResourceOrNull(graph, URIs.Expression_arrayRange);\r
+        Expression_arrayRange_Inverse = getResourceOrNull(graph, URIs.Expression_arrayRange_Inverse);\r
+        Expression_equation = getResourceOrNull(graph, URIs.Expression_equation);\r
+        Expression_equation_Inverse = getResourceOrNull(graph, URIs.Expression_equation_Inverse);\r
         Expressions = getResourceOrNull(graph, URIs.Expressions);\r
         Expressions_Inverse = getResourceOrNull(graph, URIs.Expressions_Inverse);\r
         ExternalFiles = getResourceOrNull(graph, URIs.ExternalFiles);\r
         ExternalFunctionFile = getResourceOrNull(graph, URIs.ExternalFunctionFile);\r
+        ExternalFunctionFile_externalFile = getResourceOrNull(graph, URIs.ExternalFunctionFile_externalFile);\r
+        ExternalFunctionFile_externalFile_Inverse = getResourceOrNull(graph, URIs.ExternalFunctionFile_externalFile_Inverse);\r
         Flow = getResourceOrNull(graph, URIs.Flow);\r
         FlowConnection = getResourceOrNull(graph, URIs.FlowConnection);\r
         FunctionTree = getResourceOrNull(graph, URIs.FunctionTree);\r
         GameExperiment = getResourceOrNull(graph, URIs.GameExperiment);\r
-        HasActiveExpression = getResourceOrNull(graph, URIs.HasActiveExpression);\r
-        HasActiveExpression_Inverse = getResourceOrNull(graph, URIs.HasActiveExpression_Inverse);\r
-        HasArrayIndexes = getResourceOrNull(graph, URIs.HasArrayIndexes);\r
-        HasArrayIndexes_Inverse = getResourceOrNull(graph, URIs.HasArrayIndexes_Inverse);\r
-        HasArrayRange = getResourceOrNull(graph, URIs.HasArrayRange);\r
-        HasArrayRange_Inverse = getResourceOrNull(graph, URIs.HasArrayRange_Inverse);\r
-        HasDefaultInputValue = getResourceOrNull(graph, URIs.HasDefaultInputValue);\r
-        HasDefaultInputValue_Inverse = getResourceOrNull(graph, URIs.HasDefaultInputValue_Inverse);\r
-        HasEnumerationIndexes = getResourceOrNull(graph, URIs.HasEnumerationIndexes);\r
-        HasEnumerationIndexes_Inverse = getResourceOrNull(graph, URIs.HasEnumerationIndexes_Inverse);\r
-        HasEquation = getResourceOrNull(graph, URIs.HasEquation);\r
         HasEquationOrEmpty = getResourceOrNull(graph, URIs.HasEquationOrEmpty);\r
         HasEquationOrEmpty_Inverse = getResourceOrNull(graph, URIs.HasEquationOrEmpty_Inverse);\r
-        HasEquation_Inverse = getResourceOrNull(graph, URIs.HasEquation_Inverse);\r
-        HasExpressions = getResourceOrNull(graph, URIs.HasExpressions);\r
-        HasExpressions_Inverse = getResourceOrNull(graph, URIs.HasExpressions_Inverse);\r
-        HasExternalFile = getResourceOrNull(graph, URIs.HasExternalFile);\r
-        HasExternalFile_Inverse = getResourceOrNull(graph, URIs.HasExternalFile_Inverse);\r
         HasHead = getResourceOrNull(graph, URIs.HasHead);\r
         HasHeadTerminal = getResourceOrNull(graph, URIs.HasHeadTerminal);\r
-        HasInitialEquation = getResourceOrNull(graph, URIs.HasInitialEquation);\r
-        HasInitialEquation_Inverse = getResourceOrNull(graph, URIs.HasInitialEquation_Inverse);\r
-        HasLookup = getResourceOrNull(graph, URIs.HasLookup);\r
-        HasLookup_Inverse = getResourceOrNull(graph, URIs.HasLookup_Inverse);\r
-        HasMaxX = getResourceOrNull(graph, URIs.HasMaxX);\r
-        HasMaxX_Inverse = getResourceOrNull(graph, URIs.HasMaxX_Inverse);\r
-        HasMaxY = getResourceOrNull(graph, URIs.HasMaxY);\r
-        HasMaxY_Inverse = getResourceOrNull(graph, URIs.HasMaxY_Inverse);\r
-        HasMinX = getResourceOrNull(graph, URIs.HasMinX);\r
-        HasMinX_Inverse = getResourceOrNull(graph, URIs.HasMinX_Inverse);\r
-        HasMinY = getResourceOrNull(graph, URIs.HasMinY);\r
-        HasMinY_Inverse = getResourceOrNull(graph, URIs.HasMinY_Inverse);\r
-        HasModelicaFunctionCode = getResourceOrNull(graph, URIs.HasModelicaFunctionCode);\r
-        HasModelicaFunctionCode_Inverse = getResourceOrNull(graph, URIs.HasModelicaFunctionCode_Inverse);\r
-        HasOutputInterval = getResourceOrNull(graph, URIs.HasOutputInterval);\r
-        HasOutputInterval_Inverse = getResourceOrNull(graph, URIs.HasOutputInterval_Inverse);\r
-        HasParameterFile = getResourceOrNull(graph, URIs.HasParameterFile);\r
-        HasParameterFile_Inverse = getResourceOrNull(graph, URIs.HasParameterFile_Inverse);\r
         HasRangeEnd = getResourceOrNull(graph, URIs.HasRangeEnd);\r
         HasRangeEnd_Inverse = getResourceOrNull(graph, URIs.HasRangeEnd_Inverse);\r
         HasRangeStart = getResourceOrNull(graph, URIs.HasRangeStart);\r
         HasRangeStart_Inverse = getResourceOrNull(graph, URIs.HasRangeStart_Inverse);\r
         HasRangeStep = getResourceOrNull(graph, URIs.HasRangeStep);\r
         HasRangeStep_Inverse = getResourceOrNull(graph, URIs.HasRangeStep_Inverse);\r
-        HasRedeclaration = getResourceOrNull(graph, URIs.HasRedeclaration);\r
-        HasRedeclaration_Inverse = getResourceOrNull(graph, URIs.HasRedeclaration_Inverse);\r
-        HasResult = getResourceOrNull(graph, URIs.HasResult);\r
-        HasResultFile = getResourceOrNull(graph, URIs.HasResultFile);\r
-        HasResultFile_Inverse = getResourceOrNull(graph, URIs.HasResultFile_Inverse);\r
-        HasResult_Inverse = getResourceOrNull(graph, URIs.HasResult_Inverse);\r
-        HasSolver = getResourceOrNull(graph, URIs.HasSolver);\r
-        HasSolver_Inverse = getResourceOrNull(graph, URIs.HasSolver_Inverse);\r
-        HasStartTime = getResourceOrNull(graph, URIs.HasStartTime);\r
-        HasStartTime_Inverse = getResourceOrNull(graph, URIs.HasStartTime_Inverse);\r
-        HasStopTime = getResourceOrNull(graph, URIs.HasStopTime);\r
-        HasStopTime_Inverse = getResourceOrNull(graph, URIs.HasStopTime_Inverse);\r
         HasTail = getResourceOrNull(graph, URIs.HasTail);\r
         HasTailTerminal = getResourceOrNull(graph, URIs.HasTailTerminal);\r
-        HasTextLocation = getResourceOrNull(graph, URIs.HasTextLocation);\r
-        HasTextLocation_Inverse = getResourceOrNull(graph, URIs.HasTextLocation_Inverse);\r
-        HasTolerance = getResourceOrNull(graph, URIs.HasTolerance);\r
-        HasTolerance_Inverse = getResourceOrNull(graph, URIs.HasTolerance_Inverse);\r
         HasUnit = getResourceOrNull(graph, URIs.HasUnit);\r
         HasUnit_Inverse = getResourceOrNull(graph, URIs.HasUnit_Inverse);\r
-        HasValveOrientation = getResourceOrNull(graph, URIs.HasValveOrientation);\r
-        HasValveOrientation_Inverse = getResourceOrNull(graph, URIs.HasValveOrientation_Inverse);\r
         HistoryRealization = getResourceOrNull(graph, URIs.HistoryRealization);\r
         Horizontal = getResourceOrNull(graph, URIs.Horizontal);\r
         ImportModuleTree = getResourceOrNull(graph, URIs.ImportModuleTree);\r
         ImportedOntologies = getResourceOrNull(graph, URIs.ImportedOntologies);\r
         IndependentVariable = getResourceOrNull(graph, URIs.IndependentVariable);\r
+        IndependentVariable_activeExpression = getResourceOrNull(graph, URIs.IndependentVariable_activeExpression);\r
+        IndependentVariable_activeExpression_Inverse = getResourceOrNull(graph, URIs.IndependentVariable_activeExpression_Inverse);\r
+        IndependentVariable_rangeEnd = getResourceOrNull(graph, URIs.IndependentVariable_rangeEnd);\r
+        IndependentVariable_rangeEnd_Inverse = getResourceOrNull(graph, URIs.IndependentVariable_rangeEnd_Inverse);\r
+        IndependentVariable_rangeStart = getResourceOrNull(graph, URIs.IndependentVariable_rangeStart);\r
+        IndependentVariable_rangeStart_Inverse = getResourceOrNull(graph, URIs.IndependentVariable_rangeStart_Inverse);\r
+        IndependentVariable_rangeStep = getResourceOrNull(graph, URIs.IndependentVariable_rangeStep);\r
+        IndependentVariable_rangeStep_Inverse = getResourceOrNull(graph, URIs.IndependentVariable_rangeStep_Inverse);\r
+        IndependentVariable_unit = getResourceOrNull(graph, URIs.IndependentVariable_unit);\r
+        IndependentVariable_unit_Inverse = getResourceOrNull(graph, URIs.IndependentVariable_unit_Inverse);\r
         Input = getResourceOrNull(graph, URIs.Input);\r
         InputSymbol = getResourceOrNull(graph, URIs.InputSymbol);\r
-        IsHeadOf = getResourceOrNull(graph, URIs.IsHeadOf);\r
+        Input_defaultInputValue = getResourceOrNull(graph, URIs.Input_defaultInputValue);\r
+        Input_defaultInputValue_Inverse = getResourceOrNull(graph, URIs.Input_defaultInputValue_Inverse);\r
         IsHeadOfTerminal = getResourceOrNull(graph, URIs.IsHeadOfTerminal);\r
         IsOutput = getResourceOrNull(graph, URIs.IsOutput);\r
-        IsReplaceable = getResourceOrNull(graph, URIs.IsReplaceable);\r
-        IsReplaceable_Inverse = getResourceOrNull(graph, URIs.IsReplaceable_Inverse);\r
-        IsTailOf = getResourceOrNull(graph, URIs.IsTailOf);\r
         IsTailOfTerminal = getResourceOrNull(graph, URIs.IsTailOfTerminal);\r
         IssueStyle = getResourceOrNull(graph, URIs.IssueStyle);\r
         Left = getResourceOrNull(graph, URIs.Left);\r
         Location = getResourceOrNull(graph, URIs.Location);\r
         LookupExpression = getResourceOrNull(graph, URIs.LookupExpression);\r
+        LookupExpression_lookup = getResourceOrNull(graph, URIs.LookupExpression_lookup);\r
+        LookupExpression_lookup_Inverse = getResourceOrNull(graph, URIs.LookupExpression_lookup_Inverse);\r
         ModelBrowser = getResourceOrNull(graph, URIs.ModelBrowser);\r
         Module = getResourceOrNull(graph, URIs.Module);\r
         ModuleSymbol = getResourceOrNull(graph, URIs.ModuleSymbol);\r
+        Module_redeclaration = getResourceOrNull(graph, URIs.Module_redeclaration);\r
+        Module_redeclaration_Inverse = getResourceOrNull(graph, URIs.Module_redeclaration_Inverse);\r
         NormalExpression = getResourceOrNull(graph, URIs.NormalExpression);\r
         Orientation = getResourceOrNull(graph, URIs.Orientation);\r
         ParameterExpression = getResourceOrNull(graph, URIs.ParameterExpression);\r
         PieSeriesActionContext = getResourceOrNull(graph, URIs.PieSeriesActionContext);\r
         PieSeriesActionContext_Actions = getResourceOrNull(graph, URIs.PieSeriesActionContext_Actions);\r
+        PieSeriesActionContext_Actions_SeriesDropAction = getResourceOrNull(graph, URIs.PieSeriesActionContext_Actions_SeriesDropAction);\r
         PieSeriesBrowseContext = getResourceOrNull(graph, URIs.PieSeriesBrowseContext);\r
         PieSeriesBrowseContext_SeriesChildRule = getResourceOrNull(graph, URIs.PieSeriesBrowseContext_SeriesChildRule);\r
         PieSeriesBrowseContext_SeriesLabelDecorationRule = getResourceOrNull(graph, URIs.PieSeriesBrowseContext_SeriesLabelDecorationRule);\r
         PieSeriesBrowseContext_SeriesLabelRule = getResourceOrNull(graph, URIs.PieSeriesBrowseContext_SeriesLabelRule);\r
         PlaybackExperiment = getResourceOrNull(graph, URIs.PlaybackExperiment);\r
-        Polarity = getResourceOrNull(graph, URIs.Polarity);\r
-        PolarityLocation = getResourceOrNull(graph, URIs.PolarityLocation);\r
-        PolarityLocation_Inverse = getResourceOrNull(graph, URIs.PolarityLocation_Inverse);\r
-        Polarity_Inverse = getResourceOrNull(graph, URIs.Polarity_Inverse);\r
         Profiles = getResourceOrNull(graph, URIs.Profiles);\r
         Profiles_IssueWarnings = getResourceOrNull(graph, URIs.Profiles_IssueWarnings);\r
         Profiles_SimulationPlaybackColours = getResourceOrNull(graph, URIs.Profiles_SimulationPlaybackColours);\r
@@ -791,6 +796,7 @@ public class SysdynResource {
         ProjectActionContext_Actions_OpenWorkbook = getResourceOrNull(graph, URIs.ProjectActionContext_Actions_OpenWorkbook);\r
         ProjectBrowseContext = getResourceOrNull(graph, URIs.ProjectBrowseContext);\r
         ProjectBrowseContext_BuiltinFunctions = getResourceOrNull(graph, URIs.ProjectBrowseContext_BuiltinFunctions);\r
+        ProjectBrowseContext_ExperimentsFolder = getResourceOrNull(graph, URIs.ProjectBrowseContext_ExperimentsFolder);\r
         ProjectBrowseContext_FunctionsFolder = getResourceOrNull(graph, URIs.ProjectBrowseContext_FunctionsFolder);\r
         ProjectBrowseContext_ModuleContentChildRule = getResourceOrNull(graph, URIs.ProjectBrowseContext_ModuleContentChildRule);\r
         ProjectBrowseContext_ModuleSymbol = getResourceOrNull(graph, URIs.ProjectBrowseContext_ModuleSymbol);\r
@@ -799,24 +805,27 @@ public class SysdynResource {
         ProjectBrowseContext_ModulesFolder = getResourceOrNull(graph, URIs.ProjectBrowseContext_ModulesFolder);\r
         ProjectBrowseContext_SharedFunctionsFolder = getResourceOrNull(graph, URIs.ProjectBrowseContext_SharedFunctionsFolder);\r
         Redeclaration = getResourceOrNull(graph, URIs.Redeclaration);\r
-        RefersTo = getResourceOrNull(graph, URIs.RefersTo);\r
-        ReplacedEnumeration = getResourceOrNull(graph, URIs.ReplacedEnumeration);\r
-        ReplacedEnumeration_Inverse = getResourceOrNull(graph, URIs.ReplacedEnumeration_Inverse);\r
-        ReplacingEnumeration = getResourceOrNull(graph, URIs.ReplacingEnumeration);\r
-        ReplacingEnumeration_Inverse = getResourceOrNull(graph, URIs.ReplacingEnumeration_Inverse);\r
+        Redeclaration_replacedEnumeration = getResourceOrNull(graph, URIs.Redeclaration_replacedEnumeration);\r
+        Redeclaration_replacedEnumeration_Inverse = getResourceOrNull(graph, URIs.Redeclaration_replacedEnumeration_Inverse);\r
+        Redeclaration_replacingEnumeration = getResourceOrNull(graph, URIs.Redeclaration_replacingEnumeration);\r
+        Redeclaration_replacingEnumeration_Inverse = getResourceOrNull(graph, URIs.Redeclaration_replacingEnumeration_Inverse);\r
         Result = getResourceOrNull(graph, URIs.Result);\r
+        Result_parameterFile = getResourceOrNull(graph, URIs.Result_parameterFile);\r
+        Result_parameterFile_Inverse = getResourceOrNull(graph, URIs.Result_parameterFile_Inverse);\r
+        Result_resultFile = getResourceOrNull(graph, URIs.Result_resultFile);\r
+        Result_resultFile_Inverse = getResourceOrNull(graph, URIs.Result_resultFile_Inverse);\r
+        Result_showResult = getResourceOrNull(graph, URIs.Result_showResult);\r
         Right = getResourceOrNull(graph, URIs.Right);\r
         SelectedSharedFunctionLibraries = getResourceOrNull(graph, URIs.SelectedSharedFunctionLibraries);\r
         SharedFunctionOntology = getResourceOrNull(graph, URIs.SharedFunctionOntology);\r
         SharedModuleOntolofgy = getResourceOrNull(graph, URIs.SharedModuleOntolofgy);\r
-        ShowEnumerationIndexInCharts = getResourceOrNull(graph, URIs.ShowEnumerationIndexInCharts);\r
-        ShowEnumerationIndexInCharts_Inverse = getResourceOrNull(graph, URIs.ShowEnumerationIndexInCharts_Inverse);\r
-        ShowResult = getResourceOrNull(graph, URIs.ShowResult);\r
         SimulateOnChangeExperiment = getResourceOrNull(graph, URIs.SimulateOnChangeExperiment);\r
         SimulationPlaybackProfile = getResourceOrNull(graph, URIs.SimulationPlaybackProfile);\r
         SimulationPlaybackStyle = getResourceOrNull(graph, URIs.SimulationPlaybackStyle);\r
         Stock = getResourceOrNull(graph, URIs.Stock);\r
         StockExpression = getResourceOrNull(graph, URIs.StockExpression);\r
+        StockExpression_initialEquation = getResourceOrNull(graph, URIs.StockExpression_initialEquation);\r
+        StockExpression_initialEquation_Inverse = getResourceOrNull(graph, URIs.StockExpression_initialEquation_Inverse);\r
         StockSymbol = getResourceOrNull(graph, URIs.StockSymbol);\r
         SymbolReferences = getResourceOrNull(graph, URIs.SymbolReferences);\r
         SymbolReferences_BasicSymbols = getResourceOrNull(graph, URIs.SymbolReferences_BasicSymbols);\r
@@ -826,8 +835,20 @@ public class SysdynResource {
         SysdynDiagramModelingRules = getResourceOrNull(graph, URIs.SysdynDiagramModelingRules);\r
         SysdynIssue = getResourceOrNull(graph, URIs.SysdynIssue);\r
         SysdynModel = getResourceOrNull(graph, URIs.SysdynModel);\r
+        SysdynModel_outputInterval = getResourceOrNull(graph, URIs.SysdynModel_outputInterval);\r
+        SysdynModel_outputInterval_Inverse = getResourceOrNull(graph, URIs.SysdynModel_outputInterval_Inverse);\r
+        SysdynModel_solver = getResourceOrNull(graph, URIs.SysdynModel_solver);\r
+        SysdynModel_solver_Inverse = getResourceOrNull(graph, URIs.SysdynModel_solver_Inverse);\r
+        SysdynModel_startTime = getResourceOrNull(graph, URIs.SysdynModel_startTime);\r
+        SysdynModel_startTime_Inverse = getResourceOrNull(graph, URIs.SysdynModel_startTime_Inverse);\r
+        SysdynModel_stopTime = getResourceOrNull(graph, URIs.SysdynModel_stopTime);\r
+        SysdynModel_stopTime_Inverse = getResourceOrNull(graph, URIs.SysdynModel_stopTime_Inverse);\r
+        SysdynModel_tolerance = getResourceOrNull(graph, URIs.SysdynModel_tolerance);\r
+        SysdynModel_tolerance_Inverse = getResourceOrNull(graph, URIs.SysdynModel_tolerance_Inverse);\r
         SysdynModelicaFunction = getResourceOrNull(graph, URIs.SysdynModelicaFunction);\r
         SysdynModelicaFunctionLibrary = getResourceOrNull(graph, URIs.SysdynModelicaFunctionLibrary);\r
+        SysdynModelicaFunction_modelicaFunctionCode = getResourceOrNull(graph, URIs.SysdynModelicaFunction_modelicaFunctionCode);\r
+        SysdynModelicaFunction_modelicaFunctionCode_Inverse = getResourceOrNull(graph, URIs.SysdynModelicaFunction_modelicaFunctionCode_Inverse);\r
         SysdynModuleLibrary = getResourceOrNull(graph, URIs.SysdynModuleLibrary);\r
         SysdynOperationBrowser = getResourceOrNull(graph, URIs.SysdynOperationBrowser);\r
         SysdynTerminal = getResourceOrNull(graph, URIs.SysdynTerminal);\r
@@ -862,13 +883,31 @@ public class SysdynResource {
         Validations_listeningConstraint = getResourceOrNull(graph, URIs.Validations_listeningConstraint);\r
         Valve = getResourceOrNull(graph, URIs.Valve);\r
         ValveSymbol = getResourceOrNull(graph, URIs.ValveSymbol);\r
+        ValveSymbol_orientation = getResourceOrNull(graph, URIs.ValveSymbol_orientation);\r
+        ValveSymbol_orientation_Inverse = getResourceOrNull(graph, URIs.ValveSymbol_orientation_Inverse);\r
+        ValveSymbol_textLocation = getResourceOrNull(graph, URIs.ValveSymbol_textLocation);\r
+        ValveSymbol_textLocation_Inverse = getResourceOrNull(graph, URIs.ValveSymbol_textLocation_Inverse);\r
         Variable = getResourceOrNull(graph, URIs.Variable);\r
-        Variable_Type = getResourceOrNull(graph, URIs.Variable_Type);\r
-        Variable_Type_Inverse = getResourceOrNull(graph, URIs.Variable_Type_Inverse);\r
+        Variable_arrayIndexes = getResourceOrNull(graph, URIs.Variable_arrayIndexes);\r
+        Variable_arrayIndexes_Inverse = getResourceOrNull(graph, URIs.Variable_arrayIndexes_Inverse);\r
+        Variable_expressions = getResourceOrNull(graph, URIs.Variable_expressions);\r
+        Variable_expressions_Inverse = getResourceOrNull(graph, URIs.Variable_expressions_Inverse);\r
+        Variable_isHeadOf = getResourceOrNull(graph, URIs.Variable_isHeadOf);\r
+        Variable_isTailOf = getResourceOrNull(graph, URIs.Variable_isTailOf);\r
+        Variable_type = getResourceOrNull(graph, URIs.Variable_type);\r
+        Variable_type_Inverse = getResourceOrNull(graph, URIs.Variable_type_Inverse);\r
+        Variable_unit = getResourceOrNull(graph, URIs.Variable_unit);\r
+        Variable_unit_Inverse = getResourceOrNull(graph, URIs.Variable_unit_Inverse);\r
         Vertical = getResourceOrNull(graph, URIs.Vertical);\r
         WithLookupExpression = getResourceOrNull(graph, URIs.WithLookupExpression);\r
-        angle = getResourceOrNull(graph, URIs.angle);\r
-        angle_Inverse = getResourceOrNull(graph, URIs.angle_Inverse);\r
+        WithLookupExpression_expression = getResourceOrNull(graph, URIs.WithLookupExpression_expression);\r
+        WithLookupExpression_expression_Inverse = getResourceOrNull(graph, URIs.WithLookupExpression_expression_Inverse);\r
+        WithLookupExpression_lookup = getResourceOrNull(graph, URIs.WithLookupExpression_lookup);\r
+        WithLookupExpression_lookup_Inverse = getResourceOrNull(graph, URIs.WithLookupExpression_lookup_Inverse);\r
+        WithLookupExpression_maxX = getResourceOrNull(graph, URIs.WithLookupExpression_maxX);\r
+        WithLookupExpression_maxY = getResourceOrNull(graph, URIs.WithLookupExpression_maxY);\r
+        WithLookupExpression_minX = getResourceOrNull(graph, URIs.WithLookupExpression_minX);\r
+        WithLookupExpression_minY = getResourceOrNull(graph, URIs.WithLookupExpression_minY);\r
     }\r
     \r
     public static SysdynResource getInstance(ReadGraph graph) {\r
index ecd9bdd09872c2e9b0b43f8c3d58ed30e872bde6..ac87af2b877466788022a575b488502b11a15265 100644 (file)
@@ -10,5 +10,5 @@
         VTT Technical Research Centre of Finland - initial API and implementation\r
  -->\r
 
-<adapters>\r\r   <target interface="org.simantics.db.layer0.adapter.Realization">\r               <type uri="http://www.simantics.org/Sysdyn-0.0/Module"\r                 class="org.simantics.structural2.realization.StructuralRealization">\r                   <this />\r               </type>\r        </target>\r\r     <target interface="org.simantics.layer0.utils.triggers.ITrigger">\r      <type uri = "http://www.simantics.org/Sysdyn-0.0/DiagramToCompositeMapping"\r          class = "org.simantics.sysdyn.ui.editor.DiagramToCompositeMapping3">\r         <graph/>\r           <this />\r       </type>\r        </target>\r      \r       <target interface="org.simantics.structural.ui.modelBrowser.nodes.AbstractNode">\r               <type uri="http://www.simantics.org/Sysdyn-0.0/SysdynModel"\r                    class="org.simantics.structural.ui.modelBrowser.nodes.ModelNode">\r                      <this />\r               </type>\r        </target>               \r               \r\r      <target\r                interface="org.simantics.browsing.ui.common.node.AbstractNode">\r                <type\r                  uri="http://www.simantics.org/Sysdyn-0.0/SysdynModel"\r                  class="org.simantics.sysdyn.ui.browser.nodes.ModelNode">\r                       <this />\r               </type>\r\r               <resource\r                      uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                 class="org.simantics.sysdyn.ui.browser.nodes.SymbolNode">\r                      <this />\r               </resource>\r\r           <type\r                  uri="http://www.simantics.org/Simulation-1.0/Experiment"\r                       class="org.simantics.sysdyn.ui.browser.nodes.ExperimentNode">\r                  <this />\r               </type>\r                \r               <type\r                  uri="http://www.simantics.org/Sysdyn-0.0/Result"\r                       class="org.simantics.sysdyn.ui.browser.nodes.SimulationResultNode">\r                    <this />\r               </type>\r                \r       </target>\r\r     <!-- Inject default connection routing algorithm for sysdyn diagrams -->\r       <target interface="org.simantics.g2d.diagram.DiagramClass">\r            <adapter uri="http://www.simantics.org/Sysdyn-0.0/ConfigurationDiagram"\r                        adapterClass="org.simantics.sysdyn.ui.elements2.ConfigurationDiagramClassAdapter" />\r   </target>\r\r     <!-- Sysdyn symbols -->\r        <target interface="org.simantics.diagram.adapter.ElementFactory">\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/StockSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.StockFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                       class="org.simantics.sysdyn.ui.elements2.ModuleFactory" />\r             <resource uri="http://www.simantics.org/Sysdyn-0.0/ValveSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.ValveFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/AuxiliarySymbol"\r                    class="org.simantics.sysdyn.ui.elements2.AuxiliaryFactory" />\r          <resource uri="http://www.simantics.org/Sysdyn-0.0/CloudSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.CloudFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/InputSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.InputFactory" />\r\r             <type uri="http://www.simantics.org/Sysdyn-0.0/StockSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.StockFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                   class="org.simantics.sysdyn.ui.elements2.ModuleFactory" />\r             <type uri="http://www.simantics.org/Sysdyn-0.0/ValveSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.ValveFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/AuxiliarySymbol"\r                        class="org.simantics.sysdyn.ui.elements2.AuxiliaryFactory" />\r          <type uri="http://www.simantics.org/Sysdyn-0.0/CloudSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.CloudFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/InputSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.InputFactory" />                       \r       </target>\r      \r       <!-- Sysdyn connections -->\r    <target interface="org.simantics.diagram.adapter.ElementFactory">\r              <!-- Edges -->       \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowEdgeFactory" />\r        <type uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowEdgeFactory" />            \r        <type uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowConnectionFactory">\r            <graph/>\r        </type>                       \r                       \r               <resource uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                       class="org.simantics.sysdyn.ui.elements2.connections.DependencyEdgeFactory" />\r         <type uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                   class="org.simantics.sysdyn.ui.elements2.connections.DependencyEdgeFactory" />\r         <type uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                   class="org.simantics.sysdyn.ui.elements2.connections.DependencyConnectionFactory" />\r   </target>\r      \r       <target interface="org.simantics.g2d.connection.EdgeVisualsConfigurer">\r          <baseType uri="http://www.simantics.org/Diagram-0.0/HasConnector" />\r   <resource uri="http://www.simantics.org/Diagram-0.0/HasPlainConnector"\r          class="org.simantics.diagram.content.ArrowConfigurer">\r         <string>none 0</string>\r       </resource>\r    <resource uri="http://www.simantics.org/Diagram-0.0/HasArrowConnector"\r          class="org.simantics.diagram.content.ArrowConfigurer">\r         <string>fill 1</string>\r       </resource>\r  </target>\r      \r       <!-- ModelBrowser2 -->\r \r       <target interface="org.simantics.browsing.ui.model.children.ChildRule">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleTypeChildRule"\r            class="org.simantics.sysdyn.ui.browser.childrules.ModuleTypeChildRule"/>\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleContentChildRule"\r            class="org.simantics.sysdyn.ui.browser.childrules.ModuleContentChildRule"/>     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/AxisChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisChildRule"/>     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/VariableChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.VariableChildRule"/>  \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesChildRule"/>           \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesChildRule"/>                          \r    </target>\r    \r    <target interface="org.simantics.browsing.ui.model.visuals.VisualsRule">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleTypeLabelRule"\r            class="org.simantics.sysdyn.ui.browser.labelrules.ModuleTypeLabelRule"/>\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/AxisLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisLabelRule"/> \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>       \r                     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>   \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>       \r                                               \r    </target>    \r    \r    <target interface="org.simantics.db.layer0.adapter.ActionFactory">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewModuleType"\r            class="org.simantics.sysdyn.ui.browser.actions.NewModuleTypeAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewEnumeration"\r            class="org.simantics.sysdyn.ui.browser.actions.NewEnumerationAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/OpenWorkbook"\r            class="org.simantics.sysdyn.ui.browser.actions.OpenWorkbookAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewFunction"\r            class="org.simantics.sysdyn.ui.browser.actions.NewFunctionAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewFunctionLibrary"\r            class="org.simantics.sysdyn.ui.browser.actions.NewFunctionLibraryAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewSharedFunctionLibrary"\r            class="org.simantics.sysdyn.ui.browser.actions.NewSharedFunctionLibraryAction" />            \r    </target>         \r    \r   <target interface="org.simantics.db.layer0.adapter.DropActionFactory">\r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesActionContext/Actions/SeriesDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesDropAction" />\r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesActionContext/Actions/AxisDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisDropAction" />            \r    </target>     \r  \r  <!-- PROFILES -->\r    <target interface="org.simantics.scenegraph.profile.Style">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/SimulationPlaybackStyle"\r            class="org.simantics.sysdyn.ui.elements2.profiles.SimulationPlaybackStyle">\r        </resource>\r                <resource uri="http://www.simantics.org/Sysdyn-0.0/IssueStyle"\r            class="org.simantics.sysdyn.ui.elements2.profiles.IssueDecorationStyle">\r        </resource>\r    </target>\r    \r  <!-- Charts -->\r    <target interface="org.simantics.diagram.adapter.ElementFactory">\r        <resource uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementFactory" />\r            \r        <type uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementFactory" />\r    </target>\r                \r    <target interface="org.simantics.diagram.synchronization.graph.ElementWriter">\r        <resource uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementWriter" />\r    </target>\r                    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IJFreeChart">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/Chart"\r            class="org.simantics.sysdyn.ui.trend.chart.JFreeChart">\r            <graph />\r            <this />\r        </type>\r    </target>  \r    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IDataset">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.XYDataset">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryDataset">\r            <graph />\r            <this />\r        </type>        \r        <type uri="http://www.simantics.org/JFreeChart-1.0/PieDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.PieDataset">\r            <graph />\r            <this />\r        </type>          \r    </target>\r    \r     <target interface="org.simantics.sysdyn.ui.trend.chart.ITitle">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/TextTitle"\r            class="org.simantics.sysdyn.ui.trend.chart.TextTitle">\r            <graph />\r            <this />\r        </type>\r    </target>\r    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IAxis">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/NumberAxis"\r            class="org.simantics.sysdyn.ui.trend.chart.NumberAxis">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryAxis"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryAxis">\r            <graph />\r            <this />\r        </type>        \r    </target>\r       \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IPlot">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYPlot"\r            class="org.simantics.sysdyn.ui.trend.chart.XYPlot">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryPlot"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryPlot">\r            <graph />\r            <this />\r        </type>      \r        <type uri="http://www.simantics.org/JFreeChart-1.0/PiePlot"\r            class="org.simantics.sysdyn.ui.trend.chart.PiePlot">\r            <graph />\r            <this />\r        </type>               \r    </target>\r    \r     <target interface="org.simantics.sysdyn.ui.trend.chart.IRenderer">\r     \r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYLineRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.XYLineRenderer">\r            <graph />\r            <this />\r        </type>  \r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYAreaRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.XYAreaRenderer">\r            <graph />\r            <this />\r        </type>        \r                \r        <type uri="http://www.simantics.org/JFreeChart-1.0/BarRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.BarRenderer">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/StackedBarRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.StackedBarRenderer">\r            <graph />\r            <this />\r        </type>        \r    </target>    \r       \r
+<adapters>\r\r   <target interface="org.simantics.db.layer0.adapter.Realization">\r               <type uri="http://www.simantics.org/Sysdyn-0.0/Module"\r                 class="org.simantics.structural2.realization.StructuralRealization">\r                   <this />\r               </type>\r        </target>\r\r     <target interface="org.simantics.layer0.utils.triggers.ITrigger">\r      <type uri = "http://www.simantics.org/Sysdyn-0.0/DiagramToCompositeMapping"\r          class = "org.simantics.sysdyn.ui.editor.DiagramToCompositeMapping3">\r         <graph/>\r           <this />\r       </type>\r        </target>\r      \r       <target interface="org.simantics.structural.ui.modelBrowser.nodes.AbstractNode">\r               <type uri="http://www.simantics.org/Sysdyn-0.0/SysdynModel"\r                    class="org.simantics.structural.ui.modelBrowser.nodes.ModelNode">\r                      <this />\r               </type>\r        </target>               \r               \r\r      <target\r                interface="org.simantics.browsing.ui.common.node.AbstractNode">\r                <type\r                  uri="http://www.simantics.org/Sysdyn-0.0/SysdynModel"\r                  class="org.simantics.sysdyn.ui.browser.nodes.ModelNode">\r                       <this />\r               </type>\r\r               <resource\r                      uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                 class="org.simantics.sysdyn.ui.browser.nodes.SymbolNode">\r                      <this />\r               </resource>\r\r           <type\r                  uri="http://www.simantics.org/Simulation-1.0/Experiment"\r                       class="org.simantics.sysdyn.ui.browser.nodes.ExperimentNode">\r                  <this />\r               </type>\r                \r               <type\r                  uri="http://www.simantics.org/Sysdyn-0.0/Result"\r                       class="org.simantics.sysdyn.ui.browser.nodes.SimulationResultNode">\r                    <this />\r               </type>\r                \r       </target>\r\r     <!-- Inject default connection routing algorithm for sysdyn diagrams -->\r       <target interface="org.simantics.g2d.diagram.DiagramClass">\r            <adapter uri="http://www.simantics.org/Sysdyn-0.0/ConfigurationDiagram"\r                        adapterClass="org.simantics.sysdyn.ui.elements2.ConfigurationDiagramClassAdapter" />\r   </target>\r\r     <!-- Sysdyn symbols -->\r        <target interface="org.simantics.diagram.adapter.ElementFactory">\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/StockSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.StockFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                       class="org.simantics.sysdyn.ui.elements2.ModuleFactory" />\r             <resource uri="http://www.simantics.org/Sysdyn-0.0/ValveSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.ValveFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/AuxiliarySymbol"\r                    class="org.simantics.sysdyn.ui.elements2.AuxiliaryFactory" />\r          <resource uri="http://www.simantics.org/Sysdyn-0.0/CloudSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.CloudFactory" />\r              <resource uri="http://www.simantics.org/Sysdyn-0.0/InputSymbol"\r                        class="org.simantics.sysdyn.ui.elements2.InputFactory" />\r\r             <type uri="http://www.simantics.org/Sysdyn-0.0/StockSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.StockFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/ModuleSymbol"\r                   class="org.simantics.sysdyn.ui.elements2.ModuleFactory" />\r             <type uri="http://www.simantics.org/Sysdyn-0.0/ValveSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.ValveFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/AuxiliarySymbol"\r                        class="org.simantics.sysdyn.ui.elements2.AuxiliaryFactory" />\r          <type uri="http://www.simantics.org/Sysdyn-0.0/CloudSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.CloudFactory" />\r              <type uri="http://www.simantics.org/Sysdyn-0.0/InputSymbol"\r                    class="org.simantics.sysdyn.ui.elements2.InputFactory" />                       \r       </target>\r      \r       <!-- Sysdyn connections -->\r    <target interface="org.simantics.diagram.adapter.ElementFactory">\r              <!-- Edges -->       \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowEdgeFactory" />\r        <type uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowEdgeFactory" />            \r        <type uri="http://www.simantics.org/Sysdyn-0.0/FlowConnection"\r            class="org.simantics.sysdyn.ui.elements2.connections.RouteFlowConnectionFactory">\r            <graph/>\r        </type>                       \r                       \r               <resource uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                       class="org.simantics.sysdyn.ui.elements2.connections.DependencyEdgeFactory" />\r         <type uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                   class="org.simantics.sysdyn.ui.elements2.connections.DependencyEdgeFactory" />\r         <type uri="http://www.simantics.org/Sysdyn-0.0/DependencyConnection"\r                   class="org.simantics.sysdyn.ui.elements2.connections.DependencyConnectionFactory" />\r   </target>\r      \r       <target interface="org.simantics.g2d.connection.EdgeVisualsConfigurer">\r          <baseType uri="http://www.simantics.org/Diagram-0.0/HasConnector" />\r   <resource uri="http://www.simantics.org/Diagram-0.0/HasPlainConnector"\r          class="org.simantics.diagram.content.ArrowConfigurer">\r         <string>none 0</string>\r       </resource>\r    <resource uri="http://www.simantics.org/Diagram-0.0/HasArrowConnector"\r          class="org.simantics.diagram.content.ArrowConfigurer">\r         <string>fill 1</string>\r       </resource>\r  </target>\r      \r       <!-- ModelBrowser2 -->\r \r       <target interface="org.simantics.browsing.ui.model.children.ChildRule">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleTypeChildRule"\r            class="org.simantics.sysdyn.ui.browser.childrules.ModuleTypeChildRule"/>\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleContentChildRule"\r            class="org.simantics.sysdyn.ui.browser.childrules.ModuleContentChildRule"/>     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/AxisChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisChildRule"/>     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/VariableChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.VariableChildRule"/>  \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesChildRule"/>           \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesChildRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesChildRule"/>                          \r    </target>\r    \r    <target interface="org.simantics.browsing.ui.model.visuals.VisualsRule">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectBrowseContext/ModuleTypeLabelRule"\r            class="org.simantics.sysdyn.ui.browser.labelrules.ModuleTypeLabelRule"/>\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/AxisLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisLabelRule"/> \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesLabelRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelRule"/>       \r                     \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>   \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>         \r        <resource uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesBrowseContext/SeriesLabelDecorationRule"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesLabelDecorationRule"/>       \r                                               \r    </target>    \r    \r    <target interface="org.simantics.db.layer0.adapter.ActionFactory">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewModuleType"\r            class="org.simantics.sysdyn.ui.browser.actions.NewModuleTypeAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewEnumeration"\r            class="org.simantics.sysdyn.ui.browser.actions.NewEnumerationAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/OpenWorkbook"\r            class="org.simantics.sysdyn.ui.browser.actions.OpenWorkbookAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewFunction"\r            class="org.simantics.sysdyn.ui.browser.actions.NewFunctionAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewFunctionLibrary"\r            class="org.simantics.sysdyn.ui.browser.actions.NewFunctionLibraryAction" />\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/ProjectActionContext/Actions/NewSharedFunctionLibrary"\r            class="org.simantics.sysdyn.ui.browser.actions.NewSharedFunctionLibraryAction" />            \r    </target>         \r    \r   <target interface="org.simantics.db.layer0.adapter.DropActionFactory">\r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesActionContext/Actions/SeriesDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesDropAction" />\r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/ChartAxisAndVariablesActionContext/Actions/AxisDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.AxisDropAction" />            \r            \r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/BarSeriesActionContext/Actions/SeriesDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesDropAction" />\r        <resource\r            uri="http://www.simantics.org/Sysdyn-0.0/PieSeriesActionContext/Actions/SeriesDropAction"\r            class="org.simantics.sysdyn.ui.trend.chart.graphexplorer.SeriesDropAction" />                        \r    </target>     \r  \r  <!-- PROFILES -->\r    <target interface="org.simantics.scenegraph.profile.Style">\r        <resource uri="http://www.simantics.org/Sysdyn-0.0/SimulationPlaybackStyle"\r            class="org.simantics.sysdyn.ui.elements2.profiles.SimulationPlaybackStyle">\r        </resource>\r                <resource uri="http://www.simantics.org/Sysdyn-0.0/IssueStyle"\r            class="org.simantics.sysdyn.ui.elements2.profiles.IssueDecorationStyle">\r        </resource>\r    </target>\r    \r  <!-- Charts -->\r    <target interface="org.simantics.diagram.adapter.ElementFactory">\r        <resource uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementFactory" />\r            \r        <type uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementFactory" />\r    </target>\r                \r    <target interface="org.simantics.diagram.synchronization.graph.ElementWriter">\r        <resource uri="http://www.simantics.org/JFreeChart-1.0/ChartElement"\r            class="org.simantics.sysdyn.ui.trend.chart.element.ChartElementWriter" />\r    </target>\r                    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IJFreeChart">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/Chart"\r            class="org.simantics.sysdyn.ui.trend.chart.JFreeChart">\r            <graph />\r            <this />\r        </type>\r    </target>  \r    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IDataset">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.XYDataset">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryDataset">\r            <graph />\r            <this />\r        </type>        \r        <type uri="http://www.simantics.org/JFreeChart-1.0/PieDataset"\r            class="org.simantics.sysdyn.ui.trend.chart.PieDataset">\r            <graph />\r            <this />\r        </type>          \r    </target>\r    \r     <target interface="org.simantics.sysdyn.ui.trend.chart.ITitle">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/TextTitle"\r            class="org.simantics.sysdyn.ui.trend.chart.TextTitle">\r            <graph />\r            <this />\r        </type>\r    </target>\r    \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IAxis">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/NumberAxis"\r            class="org.simantics.sysdyn.ui.trend.chart.NumberAxis">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryAxis"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryAxis">\r            <graph />\r            <this />\r        </type>        \r    </target>\r       \r    <target interface="org.simantics.sysdyn.ui.trend.chart.IPlot">\r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYPlot"\r            class="org.simantics.sysdyn.ui.trend.chart.XYPlot">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/CategoryPlot"\r            class="org.simantics.sysdyn.ui.trend.chart.CategoryPlot">\r            <graph />\r            <this />\r        </type>      \r        <type uri="http://www.simantics.org/JFreeChart-1.0/PiePlot"\r            class="org.simantics.sysdyn.ui.trend.chart.PiePlot">\r            <graph />\r            <this />\r        </type>               \r    </target>\r    \r     <target interface="org.simantics.sysdyn.ui.trend.chart.IRenderer">\r     \r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYLineRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.XYLineRenderer">\r            <graph />\r            <this />\r        </type>  \r        <type uri="http://www.simantics.org/JFreeChart-1.0/XYAreaRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.XYAreaRenderer">\r            <graph />\r            <this />\r        </type>        \r                \r        <type uri="http://www.simantics.org/JFreeChart-1.0/BarRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.BarRenderer">\r            <graph />\r            <this />\r        </type>\r        <type uri="http://www.simantics.org/JFreeChart-1.0/StackedBarRenderer"\r            class="org.simantics.sysdyn.ui.trend.chart.StackedBarRenderer">\r            <graph />\r            <this />\r        </type>        \r    </target>    \r       \r
 </adapters>
\ No newline at end of file
index 4ac2459dadb5e309de2a4bc187dd2c55c1cde685..8984a09bf8e7080c01be5db9d08be2ef779949b2 100644 (file)
@@ -56,7 +56,7 @@ public class NewEnumerationAction implements ActionFactory{
                         GraphUtils.create2(g, \r
                                 sr.Enumeration,\r
                                 l0.HasName, name,\r
-                                sr.HasEnumerationIndexes, enumerationIndexes,\r
+                                sr.Enumeration_enumerationIndexes, enumerationIndexes,\r
                                 l0.PartOf, configuration);\r
                     }\r
                 });\r
index e52c0e9a73d1e6d4e127f523b71a1674451aea6c..506f7bccc9a1e8b82e58512dc3175d83a394ec2d 100644 (file)
@@ -46,7 +46,7 @@ public class NewFunctionAction implements ActionFactory{
                         GraphUtils.create2(g, sr.SysdynModelicaFunction,\r
                                 l0.HasName, name,\r
                                 l0.HasDescription, "",\r
-                                sr.HasModelicaFunctionCode, "",\r
+                                sr.SysdynModelicaFunction_modelicaFunctionCode, "",\r
                                 l0.PartOf, library);\r
 \r
                         FunctionUtils.updateFunctionFileForLibrary(g, library);\r
index 0670d0d487a5e392883d8bc54eb166f7d3546669..0f8234e25cf7f9e1a4651d26bd7f8e05a3d9b7fb 100644 (file)
@@ -9,6 +9,7 @@ import org.simantics.db.exception.DatabaseException;
 import org.simantics.db.layer0.adapter.ActionFactory;\r
 import org.simantics.db.layer0.adapter.Template;\r
 import org.simantics.diagram.stubs.DiagramResource;\r
+import org.simantics.diagram.synchronization.graph.DiagramGraphUtil;\r
 import org.simantics.layer0.Layer0;\r
 import org.simantics.layer0.utils.direct.GraphUtils;\r
 import org.simantics.modeling.ModelingResources;\r
@@ -82,20 +83,11 @@ public class NewModuleTypeAction implements ActionFactory{
                         \r
                         Resource terminal = g.newResource();\r
                         g.claim(terminal, l0.InstanceOf, sr.SysdynTerminal);\r
-                        Resource connectionVariable = g.newResource();\r
-                        g.claim(connectionVariable, l0.InstanceOf, sr2.ConnectionVariable);\r
-                        g.claim(connectionVariable, sr2.Binds, sr.IsHeadOfTerminal);\r
-                        g.claim(connectionVariable, sr2.IsParameterOf, moduleSymbol);\r
-                        g.claim(terminal, dr.HasConnectionVariable, connectionVariable);\r
-                        \r
+                        DiagramGraphUtil.addConnectionPoint(g, moduleSymbol, terminal, sr.IsHeadOfTerminal);\r
                         \r
                         Resource terminal2 = g.newResource();\r
                         g.claim(terminal2, l0.InstanceOf, sr.SysdynTerminal);\r
-                        Resource connectionVariable2 = g.newResource();\r
-                        g.claim(connectionVariable2, l0.InstanceOf, sr2.ConnectionVariable);\r
-                        g.claim(connectionVariable2, sr2.Binds, sr.IsTailOfTerminal);\r
-                        g.claim(connectionVariable2, sr2.IsParameterOf, moduleSymbol);\r
-                        g.claim(terminal2, dr.HasConnectionVariable, connectionVariable2);\r
+                        DiagramGraphUtil.addConnectionPoint(g, moduleSymbol, terminal2, sr.IsTailOfTerminal);\r
                         \r
                         g.claim(moduleSymbol, sr2.IsDefinedBy, OrderedSetUtils.create(g, sr2.Composite, terminal, terminal2));\r
                     \r
index c95383a5063164bb539a04c59c38e270f735a0ea..40bcbe6efc8e41732d534c511ff40f93c7d2b13f 100644 (file)
@@ -34,8 +34,8 @@ public class SimulationResult  extends ViewpointContributor<ExperimentNode> {
     public Collection<?> getContribution(ReadGraph graph, ExperimentNode experiment) throws DatabaseException {\r
         ArrayList<AbstractNode<Resource>> result = new ArrayList<AbstractNode<Resource>>();\r
         SysdynResource sr = SysdynResource.getInstance(graph);\r
-        for(final Resource r : graph.syncRequest(new ObjectsWithType(experiment.data, sr.HasResult, sr.Result))) {\r
-            String resultPath = (String)graph.getPossibleRelatedValue(r, sr.HasResultFile);\r
+        for(final Resource r : graph.syncRequest(new ObjectsWithType(experiment.data, sr.Experiment_result, sr.Result))) {\r
+            String resultPath = (String)graph.getPossibleRelatedValue(r, sr.Result_resultFile);\r
             File file = new File(resultPath);\r
             if(file.exists()) {\r
                 try {\r
@@ -50,7 +50,7 @@ public class SimulationResult  extends ViewpointContributor<ExperimentNode> {
                     public void perform(WriteGraph graph) throws DatabaseException {\r
                        Layer0 l0 = Layer0.getInstance(graph);\r
                         graph.deny(r, l0.PartOf);\r
-                        graph.deny(r, graph.getInverse(SysdynResource.getInstance(graph).HasResult));\r
+                        graph.deny(r, graph.getInverse(SysdynResource.getInstance(graph).Experiment_result));\r
                         \r
                     }\r
                 });\r
index c35120a3a48b019b0b5a32a727a3e38b9022c15b..f3abbfa761ddcf303fb2e685d28bd347e351eb24 100644 (file)
@@ -24,7 +24,7 @@ public class SimulationResultDecorator extends LabelDecoratorContributor<Simulat
 \r
     @Override\r
     public LabelDecorator getDecorator(ReadGraph graph, SimulationResultNode result) throws DatabaseException {\r
-        if (graph.hasStatement(result.data, SysdynResource.getInstance(graph).ShowResult)) {\r
+        if (graph.hasStatement(result.data, SysdynResource.getInstance(graph).Result_showResult)) {\r
             return new LabelDecorator.Stub() {\r
 \r
                 @SuppressWarnings("unchecked")\r
index 70e418d87c8d55511fda074585790014e471e78f..3c2de6cf8b602a60ad38506f5157023cc349e202 100644 (file)
@@ -23,7 +23,7 @@ public class SimulationResultImager extends ImagerContributor<SimulationResultNo
 \r
     @Override\r
     public ImageDescriptor getDescriptor(ReadGraph graph, SimulationResultNode result) throws DatabaseException {\r
-        if(graph.hasStatement(result.data, SysdynResource.getInstance(graph).ShowResult))\r
+        if(graph.hasStatement(result.data, SysdynResource.getInstance(graph).Result_showResult))\r
             return ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getResource("icons/chart_bar.png"));\r
         else\r
             return ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getResource("icons/chart_bar_blackAndWhite.png"));\r
index 77113d48402616c26ec56fc69bea665d37f203d5..4194c0b022305cdb4e6d2422ee84e9eb8f3a9ba3 100644 (file)
@@ -31,12 +31,12 @@ public class EnumerationNode extends VariableNode<Resource> implements IDeletabl
                 @Override\r
                 public void perform(WriteGraph graph) throws DatabaseException, CancelTransactionException {\r
                     SysdynResource sr = SysdynResource.getInstance(graph);\r
-                    for(Resource redeclaration : graph.getObjects(data, sr.ReplacedEnumeration_Inverse)) {\r
-                       graph.deny(redeclaration, sr.HasRedeclaration_Inverse);\r
+                    for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
+                       graph.deny(redeclaration, sr.Module_redeclaration_Inverse);\r
                     }\r
                     \r
-                    for(Resource redeclaration : graph.getObjects(data, sr.ReplacingEnumeration_Inverse)) {\r
-                       graph.deny(redeclaration, sr.HasRedeclaration_Inverse);\r
+                    for(Resource redeclaration : graph.getObjects(data, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
+                       graph.deny(redeclaration, sr.Module_redeclaration_Inverse);\r
                     }\r
                     \r
                     for(Resource list : OrderedSetUtils.getOwnerLists(graph, data, sr.ArrayIndexes)) {\r
index 9bc3341328418949e08e594ec9439621ffe7b74b..d272900f1d1c9e772beb3fa20c1eb800858a8a57 100644 (file)
@@ -73,7 +73,7 @@ public class ExperimentNode extends AbstractNode<Resource> implements IDoubleCli
             SimanticsUI.getSession().syncRequest(new WriteRequest() {\r
                 @Override\r
                 public void perform(WriteGraph graph) throws DatabaseException, CancelTransactionException {\r
-                    Collection<Resource> results = graph.getObjects(data, SysdynResource.getInstance(graph).HasResult);\r
+                    Collection<Resource> results = graph.getObjects(data, SysdynResource.getInstance(graph).Experiment_result);\r
                     if(results != null)\r
                         for(Resource result : results) \r
                             SimulationResultNode.unlinkResult(graph, result);\r
index d21f18b12d7caf4f0e2cbe0b852dd6afc468a4e0..768b591e03b47d763fdd8d67aa4cfa9483573b60 100644 (file)
@@ -75,7 +75,7 @@ public class SimulationResultNode  extends AbstractNode<Resource> implements IDo
     \r
     public static void deleteResultFiles(WriteGraph graph, Resource result) throws DatabaseException  {\r
         String path;\r
-        path = graph.getPossibleRelatedValue(result, SysdynResource.getInstance(graph).HasResultFile);\r
+        path = graph.getPossibleRelatedValue(result, SysdynResource.getInstance(graph).Result_resultFile);\r
         if(path != null) {\r
             File file = new File(path);\r
             file.delete();\r
index b48de97daef05393928aef26ec9a552afdd2aba0..586117b08303d519131e0e558be305d06fa0ce53 100644 (file)
@@ -117,12 +117,12 @@ public class CreateDependencyGraph implements Read<Graph> {
 \r
                Collection<Resource> dependants;\r
                if(isInverted)\r
-                       dependants = getDependants(g, graph, r, sr.IsTailOf, sr.HasHead, sr.Dependency);\r
+                       dependants = getDependants(g, graph, r, sr.Variable_isTailOf, sr.HasHead, sr.Dependency);\r
                else {\r
-                       dependants = getDependants(g, graph, r, sr.IsHeadOf, sr.HasTail, sr.Dependency);\r
+                       dependants = getDependants(g, graph, r, sr.Variable_isHeadOf, sr.HasTail, sr.Dependency);\r
                        if (g.isInstanceOf(r, sr.Stock)) {\r
-                               dependants.addAll(getDependants(g, graph, r, sr.IsTailOf, sr.HasHead, sr.Flow));\r
-                               dependants.addAll(getDependants(g, graph, r, sr.IsHeadOf, sr.HasTail, sr.Flow));\r
+                               dependants.addAll(getDependants(g, graph, r, sr.Variable_isTailOf, sr.HasHead, sr.Flow));\r
+                               dependants.addAll(getDependants(g, graph, r, sr.Variable_isHeadOf, sr.HasTail, sr.Flow));\r
                        }\r
                }\r
 \r
index e21d6abb6d0d081659ffba18e5d7c3cb89cf0ae4..dbabc430621fcaf944d0d0e23a9caae81ee01728 100644 (file)
@@ -88,8 +88,7 @@ public class SysdynConnectionAdvisor  implements IConnectionAdvisor {
                                                Resource terminal2 = ((ResourceTerminal) term2).getResource();\r
                                                SysdynResource sr = SysdynResource.getInstance(g);\r
 \r
-                                               Resource connectionVariable = g.getPossibleObject(terminal2, dr.HasConnectionVariable);\r
-                                               if(!g.hasStatement(connectionVariable, str2.Binds, sr.IsHeadOfTerminal)) {\r
+                                               if(!g.hasStatement(terminal2, dr.HasConnectionPoint, sr.IsHeadOfTerminal)) {\r
                                                        return null;\r
                                                }\r
                                                \r
index f3151bd9b8c33252a0449fa25d4f96cc8c354a0c..58021f223f2185c49489c5ff6d47ecf4d15c2b3a 100644 (file)
@@ -114,9 +114,9 @@ public class InputFactory extends SysdynElementFactory {
         String referenceName = "";\r
         component = graph.getPossibleObject(element, mr.ElementToComponent);\r
         if(component != null) \r
-            dependency = graph.getPossibleObject(component, sr.IsHeadOf);\r
+            dependency = graph.getPossibleObject(component, sr.Variable_isHeadOf);\r
         if(dependency != null) {\r
-            refersTo = graph.getPossibleObject(dependency, sr.RefersTo);\r
+            refersTo = graph.getPossibleObject(dependency, sr.Dependency_refersTo);\r
             if(refersTo != null) {\r
                 referenceName = (String) graph.getPossibleRelatedValue(refersTo, l0.HasName);\r
                 module = graph.getPossibleObject(dependency, sr.HasTail);\r
@@ -136,8 +136,8 @@ public class InputFactory extends SysdynElementFactory {
                        module = ((ChildVariable)v).getRepresents(graph);\r
                }\r
                if(module != null)\r
-                       for(Resource dep : graph.getObjects(module, sr.IsHeadOf)) {\r
-                               Resource reference = graph.getPossibleObject(dep, sr.RefersTo);\r
+                       for(Resource dep : graph.getObjects(module, sr.Variable_isHeadOf)) {\r
+                               Resource reference = graph.getPossibleObject(dep, sr.Dependency_refersTo);\r
                                if(reference!= null && reference.equals(component)) {\r
                                        refersTo = graph.getSingleObject(dep, sr.HasTail);\r
                                        referenceName = (String) graph.getPossibleRelatedValue(refersTo, l0.HasName);\r
index 28314a22668c0ca4d0e7428bf9632d0be1d43062..50642b2e698697c5c5ab70d915951eeff97d283f 100644 (file)
@@ -94,7 +94,7 @@ public class ValveFactory extends SysdynElementFactory {
         \r
         SysdynResource sr = SysdynResource.getInstance(graph);\r
         \r
-        Resource orientation = graph.getPossibleObject(element, sr.HasValveOrientation);\r
+        Resource orientation = graph.getPossibleObject(element, sr.ValveSymbol_orientation);\r
         \r
         String orientationText;\r
         if(orientation != null && sr.Vertical.equals(orientation)) {\r
@@ -104,7 +104,7 @@ public class ValveFactory extends SysdynElementFactory {
         } \r
         SysdynElementUtils.setOrientation(e, orientationText);\r
 \r
-        Resource location = graph.getPossibleObject(element, sr.HasTextLocation);\r
+        Resource location = graph.getPossibleObject(element, sr.ValveSymbol_textLocation);\r
         String locationText;\r
         if(location == null || sr.Bottom.equals(location)) {\r
             locationText = "Bottom";\r
index 9a2691f2f57740a04df6b44cf32e694ad6422408..70d1ad55dfaea2eccf673bdbc528c08457e0c83e 100644 (file)
@@ -252,7 +252,7 @@ public class RouteFlowConnectionFactory extends SyncElementFactory {
             // Valve behaves differently. Allowed directions depend on the orientation of the valve\r
             if(te.getElementClass().containsClass(ValveSceneGraph.class)) {\r
                 SysdynResource sr = SysdynResource.getInstance(graph);\r
-                if(graph.hasStatement(terminalElement, sr.HasValveOrientation, sr.Vertical)) {\r
+                if(graph.hasStatement(terminalElement, sr.ValveSymbol_orientation, sr.Vertical)) {\r
                     allowedDirections = 10; // Directions up and down (1010)\r
                 } else {\r
                     allowedDirections = 5; // Directions left and right (0101)\r
index 5eaa2d7366b170a50cf48f42f9ac32b5f86c280c..024c6cbceb330fec85f98f3bb5d6ffaeff4b51bd 100644 (file)
@@ -47,10 +47,10 @@ public class ToggleResultActivation extends AbstractHandler {
                     SysdynResource sr = SysdynResource.getInstance(graph);\r
                     for(Resource r : resources) {\r
                         if(graph.isInstanceOf(r, sr.Result)) {\r
-                            if (graph.hasStatement(r, sr.ShowResult)) {\r
-                                graph.denyStatement(r, sr.ShowResult, r);\r
+                            if (graph.hasStatement(r, sr.Result_showResult)) {\r
+                                graph.denyStatement(r, sr.Result_showResult, r);\r
                             } else {\r
-                                graph.claim(r, sr.ShowResult, r);\r
+                                graph.claim(r, sr.Result_showResult, r);\r
                             }\r
                         }\r
                     }\r
index 53b012c59286fff2800dec430734ae2fcec7daa1..fe9d19349fff1e5609dfa30f4db16d254995f9b7 100644 (file)
@@ -81,7 +81,7 @@ public class ExportExternalFunctionFilesHandler extends AbstractHandler {
                                        try {\r
                                                String name = NameUtils.getSafeName(graph, r);\r
                                                FileOutputStream fos = new FileOutputStream(dir + "\\" + name);\r
-                                               byte[] fileBArray = graph.getPossibleRelatedValue(r, sr.HasExternalFile, Bindings.BYTE_ARRAY);\r
+                                               byte[] fileBArray = graph.getPossibleRelatedValue(r, sr.ExternalFunctionFile_externalFile, Bindings.BYTE_ARRAY);\r
                                                fos.write(fileBArray);\r
                                                fos.close();\r
                                        } catch (IOException e) {\r
index ab804371a84f311cf81654486ac8139f5fd34361..7b12325e14b17408ecf437ab3ba6e9d5fad37db7 100644 (file)
@@ -235,21 +235,21 @@ public class ExportModuleHandler extends AbstractHandler {
                        ArrayList<Pair<Resource, Resource>> replacements = new ArrayList<Pair<Resource, Resource>>();\r
 \r
                        for(Resource enumeration : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Enumeration))) {\r
-                               if(graph.hasStatement(enumeration, sr.ReplacedEnumeration_Inverse)) {\r
-                                       for(Resource replacement : graph.getObjects(enumeration, sr.ReplacedEnumeration_Inverse)) {\r
+                               if(graph.hasStatement(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
+                                       for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
                                                replacements.add(new Pair<Resource, Resource>(enumeration, replacement));\r
                                        }\r
                                }\r
                        }\r
                        \r
                        for(Pair<Resource,Resource> replacement : replacements)\r
-                               graph.deny(replacement.first, sr.ReplacedEnumeration_Inverse, replacement.second);\r
+                               graph.deny(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second);\r
                        \r
                        TransferableGraph1 tg = graph.syncRequest(new TransferableGraphRequest2(roots, component));\r
                        Files.createFile(new File(path), Bindings.getBindingUnchecked(TransferableGraph1.class), tg);\r
                        \r
                        for(Pair<Resource,Resource> replacement : replacements)\r
-                               graph.claim(replacement.first, sr.ReplacedEnumeration_Inverse, replacement.second);\r
+                               graph.claim(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second);\r
 \r
                } catch (RuntimeBindingConstructionException e) {\r
                        e.printStackTrace();\r
index f0052c6d6e573032727535c17231960ac1d1a8bc..05b63a2b59aaf8dbd2ab09be7f8359bf6a4c619e 100644 (file)
@@ -108,7 +108,7 @@ public class ImportExternalFunctionFilesHandler extends AbstractHandler {
                                byte[] fileBArray = new byte[(int)file.length()];\r
                                FileInputStream fis = new FileInputStream(file);\r
                                fis.read(fileBArray);\r
-                               graph.claimLiteral(externalFile, sr.HasExternalFile, fileBArray, Bindings.BYTE_ARRAY);\r
+                               graph.claimLiteral(externalFile, sr.ExternalFunctionFile_externalFile, fileBArray, Bindings.BYTE_ARRAY);\r
                                \r
                                FunctionUtils.createExternalFunctionFile(graph, externalFile);\r
                        } catch (IOException e) {\r
index fbd774ff158a943c67b75d68f160b9641f68bc05..e0e60a14b0fa3a7061fea770293298231da18eaa 100644 (file)
@@ -76,7 +76,7 @@ public class NewEnumerationNodeHandler extends AbstractHandler {
                GraphUtils.create2(g, \r
                                sr.Enumeration,\r
                                l0.HasName, name,\r
-                               sr.HasEnumerationIndexes, enumerationIndexes,\r
+                               sr.Enumeration_enumerationIndexes, enumerationIndexes,\r
                                l0.PartOf, configuration);\r
             }\r
         });\r
index a9a970db947d2032787bd29ec557075848cf1d64..1cf45f03905f5d46103dc28d8e922839e0998372 100644 (file)
@@ -75,7 +75,7 @@ public class NewFunctionHandler extends AbstractHandler {
                 GraphUtils.create2(g, sr.SysdynModelicaFunction,\r
                         l0.HasName, name,\r
                         l0.HasDescription, "",\r
-                        sr.HasModelicaFunctionCode, "",\r
+                        sr.SysdynModelicaFunction_modelicaFunctionCode, "",\r
                         l0.PartOf, library);\r
                 \r
                 FunctionUtils.updateFunctionFileForLibrary(g, library);\r
index 9c2e98e4ad5b670a7f10df901b7c248ea37d9c6f..4c16319ba83f1f044a6c35e5bbb984c1cca78741 100644 (file)
@@ -24,6 +24,7 @@ import org.simantics.db.common.utils.OrderedSetUtils;
 import org.simantics.db.exception.DatabaseException;\r
 import org.simantics.db.layer0.adapter.Template;\r
 import org.simantics.diagram.stubs.DiagramResource;\r
+import org.simantics.diagram.synchronization.graph.DiagramGraphUtil;\r
 import org.simantics.layer0.Layer0;\r
 import org.simantics.layer0.utils.direct.GraphUtils;\r
 import org.simantics.modeling.ModelingResources;\r
@@ -130,21 +131,12 @@ public class NewModuleNodeHandler extends AbstractHandler {
                 \r
                 Resource terminal = g.newResource();\r
                 g.claim(terminal, l0.InstanceOf, sr.SysdynTerminal);\r
-                Resource connectionVariable = g.newResource();\r
-                g.claim(connectionVariable, l0.InstanceOf, sr2.ConnectionVariable);\r
-                g.claim(connectionVariable, sr2.Binds, sr.IsHeadOfTerminal);\r
-                g.claim(connectionVariable, sr2.IsParameterOf, moduleSymbol);\r
-                g.claim(terminal, dr.HasConnectionVariable, connectionVariable);\r
-                \r
+                DiagramGraphUtil.addConnectionPoint(g, moduleSymbol, terminal, sr.IsHeadOfTerminal);               \r
                 \r
                 Resource terminal2 = g.newResource();\r
                 g.claim(terminal2, l0.InstanceOf, sr.SysdynTerminal);\r
-                Resource connectionVariable2 = g.newResource();\r
-                g.claim(connectionVariable2, l0.InstanceOf, sr2.ConnectionVariable);\r
-                g.claim(connectionVariable2, sr2.Binds, sr.IsTailOfTerminal);\r
-                g.claim(connectionVariable2, sr2.IsParameterOf, moduleSymbol);\r
-                g.claim(terminal2, dr.HasConnectionVariable, connectionVariable2);\r
-                \r
+                DiagramGraphUtil.addConnectionPoint(g, moduleSymbol, terminal2, sr.IsTailOfTerminal);\r
+                                \r
                 g.claim(moduleSymbol, sr2.IsDefinedBy, OrderedSetUtils.create(g, sr2.Composite, terminal, terminal2));\r
             \r
                 \r
index 98c94da8c2dd2f9d5d3bf676723831f0af101963..c2aac24458cdd5cb040736d7f1644eca084c2101 100644 (file)
@@ -78,7 +78,8 @@ public class NewXYLineChartHandler extends AbstractHandler {
                 Resource domainAxis = GraphUtils.create2(g, jfree.NumberAxis,\r
                         l0.HasName, "NumberAxis" + UUID.randomUUID().toString());\r
                 Resource rangeAxis = GraphUtils.create2(g, jfree.NumberAxis,\r
-                        l0.HasName, "NumberAxis" + UUID.randomUUID().toString());\r
+                        l0.HasName, "NumberAxis" + UUID.randomUUID().toString(),\r
+                        l0.HasLabel, "Y-axis");\r
                 \r
                 Resource renderer = GraphUtils.create2(g, jfree.XYLineRenderer);\r
 \r
index f16927eb137d399c4d84a0f5ae1a12c6023467f6..aae0b0ef51f9d66cbcf9b48136652bb0114147f9 100644 (file)
@@ -69,9 +69,9 @@ public class PlaybackSliderContribution extends ToolBarContributionItem {
                         Double[] numbers = new Double[3];\r
                         Resource model = spe.getModel();\r
                         SysdynResource sr = SysdynResource.getInstance(graph);\r
-                        numbers[0] = graph.getRelatedValue(model, sr.HasStartTime);\r
-                        numbers[1] = graph.getRelatedValue(model, sr.HasStopTime);\r
-                        numbers[2] = graph.getPossibleRelatedValue(model, sr.HasOutputInterval);\r
+                        numbers[0] = graph.getRelatedValue(model, sr.SysdynModel_startTime);\r
+                        numbers[1] = graph.getRelatedValue(model, sr.SysdynModel_stopTime);\r
+                        numbers[2] = graph.getPossibleRelatedValue(model, sr.SysdynModel_outputInterval);\r
                         return numbers;\r
                     }\r
                 });\r
index fb9fff6563d1a4122ad8848272e9e2083a69e36e..d871355adbaa327640495e7c62a50a2823b448ad 100644 (file)
@@ -232,8 +232,8 @@ public class SysdynProject extends AbstractProjectFeature {
                         if(graph.isInstanceOf(model, sr.SysdynModel)){\r
                             for(Resource experiment : graph.getObjects(model, l0.ConsistsOf)) {\r
                                 if(graph.isInstanceOf(experiment, SIMU.Experiment)) {\r
-                                    for(Resource result : graph.getObjects(experiment, sr.HasResult)) {\r
-                                        String resultFile = (String)graph.getPossibleRelatedValue(result, sr.HasResultFile);\r
+                                    for(Resource result : graph.getObjects(experiment, sr.Experiment_result)) {\r
+                                        String resultFile = (String)graph.getPossibleRelatedValue(result, sr.Result_resultFile);\r
                                         if(result != null) resultPaths.put(resultFile, result);\r
                                     }\r
                                 }\r
@@ -272,7 +272,7 @@ public class SysdynProject extends AbstractProjectFeature {
                         for(String key : resultPaths.keySet()) {\r
                             Resource result = resultPaths.get(key);\r
                             graph.deny(result, l0.PartOf);\r
-                            graph.deny(result, graph.getInverse(SysdynResource.getInstance(graph).HasResult));\r
+                            graph.deny(result, graph.getInverse(SysdynResource.getInstance(graph).Experiment_result));\r
                         }\r
                     }\r
                 }) ;\r
index 0939900e8314dde65303f3dc9f60c3ac80084216..004b8c1df44d9b4ce452eeae269975ae6d2f9145 100644 (file)
@@ -83,10 +83,10 @@ public class ArrayIndexesTab extends LabelPropertyTabContributor implements Widg
                        public void apply(WriteGraph graph, Resource input)\r
                                        throws DatabaseException {\r
                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                               Resource arrayIndexes = graph.getPossibleObject(input, sr.HasArrayIndexes);\r
+                               Resource arrayIndexes = graph.getPossibleObject(input, sr.Variable_arrayIndexes);\r
                                if(arrayIndexes == null) {\r
                                        arrayIndexes = OrderedSetUtils.create(graph, sr.ArrayIndexes);\r
-                                       graph.claim(input, sr.HasArrayIndexes, arrayIndexes);\r
+                                       graph.claim(input, sr.Variable_arrayIndexes, arrayIndexes);\r
                                }\r
                                OrderedSetUtils.addAll(graph, arrayIndexes, enumerationResources);\r
                        }\r
@@ -135,7 +135,7 @@ public class ArrayIndexesTab extends LabelPropertyTabContributor implements Widg
                            throws DatabaseException {\r
                        if(enumerationResources != null && enumerationResources.size() == 1) {\r
                            SysdynResource sr = SysdynResource.getInstance(graph);\r
-                           Resource arrayIndexes = graph.getPossibleObject(input, sr.HasArrayIndexes);\r
+                           Resource arrayIndexes = graph.getPossibleObject(input, sr.Variable_arrayIndexes);\r
                            if(arrayIndexes == null)\r
                                return;\r
 \r
@@ -167,7 +167,7 @@ public class ArrayIndexesTab extends LabelPropertyTabContributor implements Widg
                            throws DatabaseException {\r
                        if(enumerationResources != null && enumerationResources.size() == 1) {\r
                            SysdynResource sr = SysdynResource.getInstance(graph);\r
-                           Resource arrayIndexes = graph.getPossibleObject(input, sr.HasArrayIndexes);\r
+                           Resource arrayIndexes = graph.getPossibleObject(input, sr.Variable_arrayIndexes);\r
                            if(arrayIndexes == null)\r
                                return;\r
                            Resource enumeration = enumerationResources.get(0);\r
@@ -197,7 +197,7 @@ public class ArrayIndexesTab extends LabelPropertyTabContributor implements Widg
                            throws DatabaseException {\r
                        if(enumerationResources != null && enumerationResources.size() == 1) {\r
                            SysdynResource sr = SysdynResource.getInstance(graph);\r
-                           Resource arrayIndexes = graph.getPossibleObject(input, sr.HasArrayIndexes);\r
+                           Resource arrayIndexes = graph.getPossibleObject(input, sr.Variable_arrayIndexes);\r
                            if(arrayIndexes == null)\r
                                return;\r
 \r
index 8ad18ac6c7d8766721f37e2e7d1c22e30d391345..a67546b18b746514ea8caf774770be9ff9fde155 100644 (file)
@@ -86,8 +86,8 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
         label.setText("Start time");\r
 \r
         TrackedText startTime = new TrackedText(composite, support, SWT.BORDER | SWT.RIGHT);\r
-        startTime.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasStartTime));\r
-        startTime.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasStartTime));\r
+        startTime.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.SysdynModel_startTime));\r
+        startTime.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.SysdynModel_startTime));\r
         startTime.setInputValidator(new DoubleValidator());\r
         GridDataFactory.fillDefaults().hint(200, SWT.DEFAULT).applyTo(startTime.getWidget());\r
 \r
@@ -95,8 +95,8 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
         label.setText("Stop time");\r
 \r
         TrackedText stopTime = new TrackedText(composite, support, SWT.BORDER | SWT.RIGHT);\r
-        stopTime.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasStopTime));\r
-        stopTime.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasStopTime));\r
+        stopTime.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.SysdynModel_stopTime));\r
+        stopTime.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.SysdynModel_stopTime));\r
         stopTime.setInputValidator(new DoubleValidator());\r
         GridDataFactory.fillDefaults().hint(200, SWT.DEFAULT).applyTo(stopTime.getWidget());\r
 \r
@@ -104,8 +104,8 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
         label.setText("Step length\n(empty = default)");\r
 \r
         TrackedText outputInterval = new TrackedText(composite, support, SWT.BORDER | SWT.RIGHT);\r
-        outputInterval.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasOutputInterval));\r
-        outputInterval.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasOutputInterval));\r
+        outputInterval.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.SysdynModel_outputInterval));\r
+        outputInterval.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.SysdynModel_outputInterval));\r
         outputInterval.setInputValidator(new DoubleValidator());\r
         GridDataFactory.fillDefaults().hint(200, SWT.DEFAULT).applyTo(outputInterval.getWidget());\r
         \r
@@ -133,7 +133,7 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
 \r
             @Override\r
             public String perform(ReadGraph graph, final Resource input) throws DatabaseException {\r
-                String s = graph.getPossibleRelatedValue(input, SysdynResource.getInstance(graph).HasSolver);\r
+                String s = graph.getPossibleRelatedValue(input, SysdynResource.getInstance(graph).SysdynModel_solver);\r
                 return s != null ? s : "";\r
             }\r
         });\r
@@ -143,7 +143,7 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
                        @Override\r
                        public void applyText(WriteGraph graph, Resource input, String text)\r
                                        throws DatabaseException {\r
-                               graph.claimLiteral(input, SysdynResource.getInstance(graph).HasSolver, text);\r
+                               graph.claimLiteral(input, SysdynResource.getInstance(graph).SysdynModel_solver, text);\r
                        }\r
                });\r
         \r
@@ -151,8 +151,8 @@ public class ConfigurationTab extends LabelPropertyTabContributor {
         label.setText("Tolerance");\r
 \r
         TrackedText tolerance = new TrackedText(composite, support, SWT.BORDER | SWT.RIGHT);\r
-        tolerance.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasTolerance));\r
-        tolerance.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasTolerance));\r
+        tolerance.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.SysdynModel_tolerance));\r
+        tolerance.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.SysdynModel_tolerance));\r
         tolerance.setInputValidator(new DoubleValidator());\r
         GridDataFactory.fillDefaults().hint(200, SWT.DEFAULT).applyTo(tolerance.getWidget());\r
 \r
index a57da158df8aa3e8de0321c5298b2d9b40a458e3..7ebec21abdc57951bf01e7410b3ca711c651b50d 100644 (file)
@@ -72,8 +72,8 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         other.setSelectionFactory(new OtherPolaritySelectionFactory(new String[] {null, "+", "-", ""}));\r
         \r
         polarityText = new TrackedText(polarityGroup, support, SWT.BORDER);\r
-        polarityText.setTextFactory(new StringPropertyFactory(SysdynResource.URIs.Polarity));\r
-        polarityText.addModifyListener(new StringPropertyModifier(context, SysdynResource.URIs.Polarity));\r
+        polarityText.setTextFactory(new StringPropertyFactory(SysdynResource.URIs.DependencyConnection_polarity));\r
+        polarityText.addModifyListener(new StringPropertyModifier(context, SysdynResource.URIs.DependencyConnection_polarity));\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(polarityText.getWidget());\r
         \r
         Group locationGroup = new Group(composite, SWT.NONE);\r
@@ -103,7 +103,7 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         @Override\r
         public void apply(WriteGraph graph, Resource connectionElement) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
-            graph.claimLiteral(connectionElement, sr.PolarityLocation, location);\r
+            graph.claimLiteral(connectionElement, sr.DependencyConnection_polarityLocation, location);\r
         }\r
         \r
     }\r
@@ -123,7 +123,7 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         @Override\r
         public Boolean perform(ReadGraph graph, Resource dependencyConnection) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
-            String location = graph.getPossibleRelatedValue(dependencyConnection, sr.PolarityLocation, Bindings.STRING);  \r
+            String location = graph.getPossibleRelatedValue(dependencyConnection, sr.DependencyConnection_polarityLocation, Bindings.STRING);  \r
             if(DependencyNode.OUTSIDE.equals(this.location)) {\r
                 return ObjectUtils.objectEquals(this.location, location);\r
             } else {\r
@@ -146,7 +146,7 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         @Override\r
         public void apply(WriteGraph graph, Resource connectionElement) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
-            graph.claimLiteral(connectionElement, sr.Polarity, polarity.trim());\r
+            graph.claimLiteral(connectionElement, sr.DependencyConnection_polarity, polarity.trim());\r
         }\r
         \r
     }\r
@@ -166,7 +166,7 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         @Override\r
         public Boolean perform(ReadGraph graph, Resource dependencyConnection) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
-            String polarity = graph.getPossibleRelatedValue(dependencyConnection, sr.Polarity, Bindings.STRING);     \r
+            String polarity = graph.getPossibleRelatedValue(dependencyConnection, sr.DependencyConnection_polarity, Bindings.STRING);     \r
             if(polarity == null && this.polarity.equals(""))\r
                 return true;\r
             return ObjectUtils.objectEquals(polarity, this.polarity);\r
@@ -189,7 +189,7 @@ public class DependencyTab  extends LabelPropertyTabContributor {
         @Override\r
         public Boolean perform(ReadGraph graph, Resource dependencyConnection) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
-            String polarity = graph.getPossibleRelatedValue(dependencyConnection, sr.Polarity, Bindings.STRING);\r
+            String polarity = graph.getPossibleRelatedValue(dependencyConnection, sr.DependencyConnection_polarity, Bindings.STRING);\r
             for(String s : limits) {\r
                 if(ObjectUtils.objectEquals(polarity, s))\r
                     return false;\r
index b0ceb8a0f8f74ffae1f0a385bb280e72dd28c394..08be0f8b2f8dcc793b1994d463c90b599126870b 100644 (file)
@@ -160,7 +160,7 @@ public class EnumerationTab extends LabelPropertyTabContributor implements Widge
 \r
                                        @Override\r
                                        public void run(ReadGraph graph) throws DatabaseException {\r
-                                               enumerationIndexes = graph.getSingleObject(enumeration, SysdynResource.getInstance(graph).HasEnumerationIndexes);\r
+                                               enumerationIndexes = graph.getSingleObject(enumeration, SysdynResource.getInstance(graph).Enumeration_enumerationIndexes);\r
                                        }\r
                                });\r
                        } catch (DatabaseException e) {\r
@@ -218,7 +218,7 @@ public class EnumerationTab extends LabelPropertyTabContributor implements Widge
 \r
                                        @Override\r
                                        public void run(ReadGraph graph) throws DatabaseException {\r
-                                               enumerationIndexes = graph.getSingleObject(enumeration, SysdynResource.getInstance(graph).HasEnumerationIndexes);\r
+                                               enumerationIndexes = graph.getSingleObject(enumeration, SysdynResource.getInstance(graph).Enumeration_enumerationIndexes);\r
                                        }\r
                                });\r
                        } catch (DatabaseException e) {\r
@@ -276,10 +276,10 @@ public class EnumerationTab extends LabelPropertyTabContributor implements Widge
                                        public Boolean perform(ReadGraph graph)\r
                                                        throws DatabaseException {\r
                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                               enumerationIndexes = graph.getSingleObject(enumeration, sr.HasEnumerationIndexes);\r
+                                               enumerationIndexes = graph.getSingleObject(enumeration, sr.Enumeration_enumerationIndexes);\r
                                                List<Resource> indexes = OrderedSetUtils.toList(graph, enumerationIndexes);\r
                                                for(Resource index : indexes) {\r
-                                                       Boolean show = graph.getPossibleRelatedValue(index, sr.ShowEnumerationIndexInCharts, Bindings.BOOLEAN);\r
+                                                       Boolean show = graph.getPossibleRelatedValue(index, sr.EnumerationIndex_showEnumerationIndexInCharts, Bindings.BOOLEAN);\r
                                                        if(!Boolean.TRUE.equals(show))\r
                                                                return false;\r
                                                }\r
@@ -326,11 +326,11 @@ public class EnumerationTab extends LabelPropertyTabContributor implements Widge
                                                        SysdynResource sr = SysdynResource.getInstance(graph);\r
                                                        List<Resource> indexes = OrderedSetUtils.toList(graph, enumerationIndexes);\r
                                                        for(Resource index : indexes) {\r
-                                                               Boolean show = graph.getPossibleRelatedValue(index, sr.ShowEnumerationIndexInCharts, Bindings.BOOLEAN);\r
+                                                               Boolean show = graph.getPossibleRelatedValue(index, sr.EnumerationIndex_showEnumerationIndexInCharts, Bindings.BOOLEAN);\r
                                                                if(selected && !Boolean.TRUE.equals(show)) {\r
-                                                                       graph.claimLiteral(index, sr.ShowEnumerationIndexInCharts, true, Bindings.BOOLEAN);\r
+                                                                       graph.claimLiteral(index, sr.EnumerationIndex_showEnumerationIndexInCharts, true, Bindings.BOOLEAN);\r
                                                                } else if(!selected && !Boolean.FALSE.equals(show)) {\r
-                                                                       graph.claimLiteral(index, sr.ShowEnumerationIndexInCharts, false, Bindings.BOOLEAN);\r
+                                                                       graph.claimLiteral(index, sr.EnumerationIndex_showEnumerationIndexInCharts, false, Bindings.BOOLEAN);\r
                                                                }\r
                                                        }\r
                                                        \r
index 74fc5cac855d39dc79ab1bcd6dbbf71bf43503fd..a8340f241af7b56b3ef44bb33741f2ce26cea2de 100644 (file)
@@ -179,17 +179,17 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
                                                Layer0 l0 = Layer0.getInstance(graph);\r
                                                Resource expressions = OrderedSetUtils.create(graph, sr.Expressions);\r
-                                               graph.claim(variable, sr.HasExpressions, expressions);\r
+                                               graph.claim(variable, sr.Variable_expressions, expressions);\r
                                                final Resource expression = graph.newResource();\r
 \r
                                                if(graph.isInstanceOf(variable, sr.Auxiliary) ||\r
                                                                graph.isInstanceOf(variable, sr.Valve)) {\r
                                                        graph.claim(expression, l0.InstanceOf, null, sr.NormalExpression);\r
-                                                       graph.claimLiteral(expression, sr.HasEquation, "");\r
+                                                       graph.claimLiteral(expression, sr.Expression_equation, "");\r
                                                }\r
                                                else if(graph.isInstanceOf(variable, sr.Stock)) {\r
                                                        graph.claim(expression, l0.InstanceOf, null, sr.StockExpression);\r
-                                                       graph.claimLiteral(expression, sr.HasInitialEquation, "");\r
+                                                       graph.claimLiteral(expression, sr.StockExpression_initialEquation, "");\r
                                                }\r
                                                OrderedSetUtils.add(graph, expressions, expression);\r
                                                graph.claim(variable, l0.ConsistsOf, expression);\r
@@ -204,9 +204,9 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                                                        @Override\r
                                                                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                                                               if(graph.hasStatement(variable, sr.HasActiveExpression))\r
-                                                                                       graph.deny(variable, sr.HasActiveExpression);\r
-                                                                               graph.claim(variable, sr.HasActiveExpression, expression);\r
+                                                                               if(graph.hasStatement(variable, sr.IndependentVariable_activeExpression))\r
+                                                                                       graph.deny(variable, sr.IndependentVariable_activeExpression);\r
+                                                                               graph.claim(variable, sr.IndependentVariable_activeExpression, expression);\r
                                                                        }\r
                                                                }\r
                                                                );\r
@@ -229,7 +229,7 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                        @Override\r
                        public Pair<Boolean, Boolean> perform(ReadGraph graph) throws DatabaseException {\r
                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                               Resource expressions = graph.getPossibleObject(variable, sr.HasExpressions);\r
+                               Resource expressions = graph.getPossibleObject(variable, sr.Variable_expressions);\r
                                if(expressions == null) {\r
                                        return new Pair<Boolean, Boolean>(false, false);\r
                                }\r
@@ -249,7 +249,7 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                 * the ranges is the default range, an expression can be added\r
                                 */ \r
                                for(Resource expression : expressionList) {\r
-                                       String range = graph.getPossibleRelatedValue(expression, sr.HasArrayRange);\r
+                                       String range = graph.getPossibleRelatedValue(expression, sr.Expression_arrayRange);\r
                                        if(range == null || range.equals("") || range.equals(defaultRange)) {\r
                                                canAdd = false;\r
                                                break;\r
@@ -318,7 +318,7 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                Layer0 l0 = Layer0.getInstance(graph);\r
                                \r
                                // Currently active expressin should be located in (Model sr.HasActiveExpression expression)\r
-                               Resource activeExpression = graph.getPossibleObject(input, sr.HasActiveExpression);\r
+                               Resource activeExpression = graph.getPossibleObject(input, sr.IndependentVariable_activeExpression);\r
                                if(activeExpression == null)\r
                                        return;\r
 \r
@@ -350,9 +350,9 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                                        @Override\r
                                                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                                               if(graph.hasStatement(input, sr.HasActiveExpression))\r
-                                                                       graph.deny(input, sr.HasActiveExpression);\r
-                                                               graph.claim(input, sr.HasActiveExpression, newActive);\r
+                                                               if(graph.hasStatement(input, sr.IndependentVariable_activeExpression))\r
+                                                                       graph.deny(input, sr.IndependentVariable_activeExpression);\r
+                                                               graph.claim(input, sr.IndependentVariable_activeExpression, newActive);\r
                                                        }\r
                                                }\r
                                                );\r
@@ -370,18 +370,18 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
                                SysdynResource sr = SysdynResource.getInstance(graph);\r
                                Layer0 l0 = Layer0.getInstance(graph);\r
 \r
-                               Resource expressions = graph.getPossibleObject(input, sr.HasExpressions);\r
+                               Resource expressions = graph.getPossibleObject(input, sr.Variable_expressions);\r
                                if(expressions == null) {\r
                                        return;\r
                                }\r
                                // Get the currently active expression\r
-                               Resource activeExpression = graph.getPossibleObject(input, sr.HasActiveExpression);\r
+                               Resource activeExpression = graph.getPossibleObject(input, sr.IndependentVariable_activeExpression);\r
                                Resource newExpression = graph.newResource();\r
                                if(activeExpression != null) {\r
                                    // Create a new expression based on the old expression\r
                                        graph.claim(newExpression, l0.InstanceOf, graph.getSingleObject(activeExpression, l0.InstanceOf));\r
                                        if(graph.isInstanceOf(newExpression, sr.StockExpression)) {\r
-                                               graph.claimLiteral(newExpression, sr.HasInitialEquation, "");\r
+                                               graph.claimLiteral(newExpression, sr.StockExpression_initialEquation, "");\r
                                        }\r
                                } else {\r
                                    // If there was no active expression, create a normal expression\r
@@ -616,9 +616,9 @@ public class EquationTab extends LabelPropertyTabContributor implements Widget {
         */\r
        private Resource getActiveExpression(ReadGraph graph, Resource variable) throws DatabaseException {\r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
-               Resource expression = graph.getPossibleObject(variable, sr.HasActiveExpression);\r
+               Resource expression = graph.getPossibleObject(variable, sr.IndependentVariable_activeExpression);\r
                if(expression == null) {\r
-                       Resource expressions = graph.getPossibleObject(variable, sr.HasExpressions);\r
+                       Resource expressions = graph.getPossibleObject(variable, sr.Variable_expressions);\r
                        if(expressions == null) {\r
                                return null;\r
                        }\r
index 4ee58758db2ccc8a7a6e9019dc5e6b2c18750ab4..a3d6b1875c27337642ab754318c7bfa063bdf0c7 100644 (file)
@@ -60,8 +60,8 @@ public class InputVariableTab  extends LabelPropertyTabContributor {
         label.setText("Default Value:");\r
         \r
         TrackedText defaultValue = new TrackedText(defaultValueComposite, support, SWT.RIGHT | SWT.BORDER);\r
-        defaultValue.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasDefaultInputValue));\r
-        defaultValue.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasDefaultInputValue));\r
+        defaultValue.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.Input_defaultInputValue));\r
+        defaultValue.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.Input_defaultInputValue));\r
         defaultValue.setInputValidator(new DoubleValidator());\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(defaultValue.getWidget());\r
 \r
index 678227ff02369f884b7028762c129f768e522170..16c92c383b92bd8388fced5d600d4859e9fc6974 100644 (file)
@@ -41,15 +41,15 @@ public class LookupTableTab extends LabelPropertyTabContributor {
         GridDataFactory.fillDefaults().grab(false, true).applyTo(Ycontainer);\r
 \r
         TrackedText maxYText = new TrackedText(Ycontainer, support, SWT.BORDER);\r
-        maxYText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasMaxY));\r
-        maxYText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasMaxY));\r
+        maxYText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.WithLookupExpression_maxY));\r
+        maxYText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.WithLookupExpression_maxY));\r
 \r
         Label l = new Label(Ycontainer, SWT.NONE);\r
         GridDataFactory.fillDefaults().align(SWT.CENTER, SWT.CENTER).grab(false, true).applyTo(l);\r
 \r
         TrackedText minYText = new TrackedText(Ycontainer, support, SWT.BORDER);\r
-        minYText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasMinY));\r
-        minYText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasMinY));\r
+        minYText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.WithLookupExpression_minY));\r
+        minYText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.WithLookupExpression_minY));\r
 \r
 \r
         Composite chartContainer = new Composite(baseContainer, SWT.NONE);\r
@@ -73,15 +73,15 @@ public class LookupTableTab extends LabelPropertyTabContributor {
         GridDataFactory.fillDefaults().grab(true, false).applyTo(Xcontainer);\r
 \r
         TrackedText minXText = new TrackedText(Xcontainer, support, SWT.BORDER);\r
-        minXText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasMinX));\r
-        minXText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasMinX));\r
+        minXText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.WithLookupExpression_minX));\r
+        minXText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.WithLookupExpression_minX));\r
 \r
         l = new Label(Xcontainer, SWT.NONE);\r
         GridDataFactory.fillDefaults().align(SWT.CENTER, SWT.CENTER).grab(true, false).applyTo(l);\r
 \r
         TrackedText maxXText = new TrackedText(Xcontainer, support, SWT.BORDER);\r
-        maxXText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.HasMaxX));\r
-        maxXText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.HasMaxX));\r
+        maxXText.setTextFactory(new DoublePropertyFactory(SysdynResource.URIs.WithLookupExpression_maxX));\r
+        maxXText.addModifyListener(new DoublePropertyModifier(context, SysdynResource.URIs.WithLookupExpression_maxX));\r
 \r
     }\r
 }\r
index f188749c9ac5cac38be7164b02219b7a693a4aca..2ee0ac0f39399859317ce79ff55634367709d6db 100644 (file)
@@ -69,8 +69,8 @@ public class ModuleInputTab extends LabelPropertyTabContributor {
                 Resource configuration = graph.getSingleObject(instanceOf, sr2.IsDefinedBy);\r
                 for(Resource input : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Input))) {\r
                     Resource dependency = null;\r
-                    for(Resource dep : graph.getObjects(module, sr.IsHeadOf)) {\r
-                        Resource refersTo = graph.getPossibleObject(dep, sr.RefersTo);\r
+                    for(Resource dep : graph.getObjects(module, sr.Variable_isHeadOf)) {\r
+                        Resource refersTo = graph.getPossibleObject(dep, sr.Dependency_refersTo);\r
                         if(refersTo != null && refersTo.equals(input)) {\r
                             dependency = dep;\r
                             break;\r
index 29c2819f17bb2f30018bc5b877f0a3737c4f9628..24e08266067ffa71cfc0675d44275596edb8c40d 100644 (file)
@@ -71,8 +71,8 @@ public class ModuleOutputTab extends LabelPropertyTabContributor {
                     if(!graph.hasStatement(variable, sr.IsOutput)) continue;\r
                     \r
                     Resource dependency = null;\r
-                    for(Resource dep : graph.getObjects(module, sr.IsTailOf)) {\r
-                        Resource refersTo = graph.getPossibleObject(dep, sr.RefersTo);\r
+                    for(Resource dep : graph.getObjects(module, sr.Variable_isTailOf)) {\r
+                        Resource refersTo = graph.getPossibleObject(dep, sr.Dependency_refersTo);\r
                         if(refersTo != null && refersTo.equals(variable)) {\r
                             dependency = dep;\r
                             break;\r
index 6ba81d708b0d40731f421cbbc878ca99b31235e4..d26e366817b21fdf1960ef101ed46b5bc3863cbf 100644 (file)
@@ -117,14 +117,14 @@ public class ResourceSelectionProcessor implements SelectionProcessor<Object, Re
 \r
             // Independent variable\r
             if (backend.isInstanceOf(r, sr.IndependentVariable)) {\r
-                Resource activeExpression = backend.getPossibleObject(r, sr.HasActiveExpression);\r
+                Resource activeExpression = backend.getPossibleObject(r, sr.IndependentVariable_activeExpression);\r
                 Resource expression = null;\r
                 if(activeExpression != null)\r
                     // if variable has active expression, display it\r
                     expression = activeExpression;\r
-                else if (backend.hasStatement(r, sr.HasExpressions)){\r
+                else if (backend.hasStatement(r, sr.Variable_expressions)){\r
                     // else display the first expression of the variable\r
-                    Resource expressions = backend.getPossibleObject(r, sr.HasExpressions);\r
+                    Resource expressions = backend.getPossibleObject(r, sr.Variable_expressions);\r
                     List<Resource> expressionList = OrderedSetUtils.toList(backend, expressions);\r
                     if(expressionList.isEmpty()) {\r
                         System.err.println("expressionList is empty for " + r);\r
@@ -257,7 +257,7 @@ public class ResourceSelectionProcessor implements SelectionProcessor<Object, Re
 \r
             // Dependency\r
             if (backend.isInstanceOf(r, sr.Dependency))\r
-                if (backend.hasStatement(r, sr.RefersTo))\r
+                if (backend.hasStatement(r, sr.Dependency_refersTo))\r
                     return Collections.singleton(\r
                             new ComparableTabContributor(\r
                                     new ReferenceDependencyTab(),\r
index 51144d80f7a0611ff39ff023e5e3de6a24e4578c..5994a0c5e8578a11175ecbf4c643f9c376b232f7 100644 (file)
@@ -60,7 +60,7 @@ public class ArrayExpressionCombo extends TrackedCombo {
 \r
                                String defaultRange = getDefaultRange(graph, input);\r
                                for(Resource expression : getExpressions(graph, input)) {\r
-                                       String arrayRange = graph.getPossibleRelatedValue(expression, sr.HasArrayRange); \r
+                                       String arrayRange = graph.getPossibleRelatedValue(expression, sr.Expression_arrayRange); \r
                                        if(arrayRange != null) {\r
                                                map.put(name + arrayRange, expression);\r
                                        } else if(defaultRange != null) {\r
@@ -92,7 +92,7 @@ public class ArrayExpressionCombo extends TrackedCombo {
 \r
                                SysdynResource sr = SysdynResource.getInstance(graph);\r
 \r
-                               Resource activeExpression = graph.getPossibleObject(input, sr.HasActiveExpression);\r
+                               Resource activeExpression = graph.getPossibleObject(input, sr.IndependentVariable_activeExpression);\r
                                Resource expression;\r
                                if(activeExpression == null) {\r
                                        ArrayList<Resource> expressions = getExpressions(graph, input);\r
@@ -102,7 +102,7 @@ public class ArrayExpressionCombo extends TrackedCombo {
                                } else {\r
                                        expression = activeExpression;\r
                                }\r
-                               String range = graph.getPossibleRelatedValue(expression, sr.HasArrayRange);\r
+                               String range = graph.getPossibleRelatedValue(expression, sr.Expression_arrayRange);\r
                                if(range != null)\r
                                        return name + range;\r
                                else\r
@@ -155,7 +155,7 @@ public class ArrayExpressionCombo extends TrackedCombo {
 \r
        private ArrayList<Resource> getExpressions(ReadGraph graph, Resource variable) throws DatabaseException {\r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
-               Resource hasExpressions = graph.getPossibleObject(variable, sr.HasExpressions);\r
+               Resource hasExpressions = graph.getPossibleObject(variable, sr.Variable_expressions);\r
                if(hasExpressions == null)\r
                        return new ArrayList<Resource>();\r
                else\r
@@ -164,7 +164,7 @@ public class ArrayExpressionCombo extends TrackedCombo {
 \r
        public static String getDefaultRange(ReadGraph graph, Resource variable) throws DatabaseException {\r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
-               Resource hasArrayIndexes = graph.getPossibleObject(variable, sr.HasArrayIndexes);\r
+               Resource hasArrayIndexes = graph.getPossibleObject(variable, sr.Variable_arrayIndexes);\r
 \r
                if(hasArrayIndexes == null)\r
                        return null;\r
@@ -240,13 +240,15 @@ public class ArrayExpressionCombo extends TrackedCombo {
                        SysdynResource sr = SysdynResource.getInstance(graph);\r
 \r
                        if(range != null && lastExpression != null) {\r
-                               String oldRange = graph.getPossibleRelatedValue(lastExpression, sr.HasArrayRange);\r
+                               String oldRange = graph.getPossibleRelatedValue(lastExpression, sr.Expression_arrayRange);\r
                                if(oldRange == null || !range.equals(oldRange)) {\r
-                                       graph.claimLiteral(lastExpression, sr.HasArrayRange, "[" + range + "]");\r
+                                       graph.claimLiteral(lastExpression, sr.Expression_arrayRange, "[" + range + "]");\r
                                }\r
+                       } else if (range == null && lastExpression != null && graph.hasStatement(lastExpression, sr.Expression_arrayRange)) {\r
+                           graph.deny(lastExpression, sr.Expression_arrayRange);\r
                        }\r
 \r
-                       Resource activeExpression = graph.getPossibleObject(variable, sr.HasActiveExpression);\r
+                       Resource activeExpression = graph.getPossibleObject(variable, sr.IndependentVariable_activeExpression);\r
 \r
                        if(lastExpression != null && !lastExpression.equals(activeExpression)) {\r
                                VirtualGraphSupport support = graph.getService(VirtualGraphSupport.class);\r
@@ -259,9 +261,9 @@ public class ArrayExpressionCombo extends TrackedCombo {
                                                        @Override\r
                                                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                                               if(graph.hasStatement(variable, sr.HasActiveExpression))\r
-                                                                       graph.deny(variable, sr.HasActiveExpression);\r
-                                                               graph.claim(variable, sr.HasActiveExpression, lastExpression);\r
+                                                               if(graph.hasStatement(variable, sr.IndependentVariable_activeExpression))\r
+                                                                       graph.deny(variable, sr.IndependentVariable_activeExpression);\r
+                                                               graph.claim(variable, sr.IndependentVariable_activeExpression, lastExpression);\r
                                                        }\r
                                                }\r
                                                );\r
index bc78c153e898a9e251387d1486bd3c9e41a99c31..b600df862b4f30f4fecdb13147a7274293661faf 100644 (file)
@@ -170,7 +170,7 @@ public class ChartTableWidget implements Widget {
                     SysdynResource sr = SysdynResource.getInstance(graph);\r
                     if(!graph.isInstanceOf(expression, sr.WithLookupExpression))\r
                        return null;\r
-                    return graph.getPossibleRelatedValue(expression, sr.HasLookup);\r
+                    return graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_lookup);\r
                 }\r
             }, new Listener<String>() {\r
 \r
@@ -239,7 +239,7 @@ public class ChartTableWidget implements Widget {
             @Override\r
             public void perform(WriteGraph graph) throws DatabaseException {\r
                 SysdynResource sr = SysdynResource.getInstance(graph);\r
-                graph.claimLiteral(expression, sr.HasLookup, table);\r
+                graph.claimLiteral(expression, sr.WithLookupExpression_lookup, table);\r
             }\r
         });\r
     }\r
index 742264c1194b260c39b060b427ccfa4bf64e92d2..2dd769dcd4e7e561d27c55bf9bdae0a02e5d7784 100644 (file)
@@ -104,11 +104,11 @@ public class ChartWidget implements Widget {
                        if(!graph.isInstanceOf(expression, sr.WithLookupExpression))\r
                                return null;\r
                        Auxiliary auxiliary = new Auxiliary();\r
-                    auxiliary.minX = graph.getPossibleRelatedValue(expression, sr.HasMinX);\r
-                    auxiliary.maxX = graph.getPossibleRelatedValue(expression, sr.HasMaxX);\r
-                    auxiliary.minY = graph.getPossibleRelatedValue(expression, sr.HasMinY);\r
-                    auxiliary.maxY = graph.getPossibleRelatedValue(expression, sr.HasMaxY);\r
-                    auxiliary.table = graph.getPossibleRelatedValue(expression, sr.HasLookup);\r
+                    auxiliary.minX = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_minX);\r
+                    auxiliary.maxX = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_maxX);\r
+                    auxiliary.minY = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_minY);\r
+                    auxiliary.maxY = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_maxY);\r
+                    auxiliary.table = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_lookup);\r
                     return auxiliary;\r
                 }\r
             }, new Listener<Auxiliary>() {\r
@@ -231,7 +231,7 @@ public class ChartWidget implements Widget {
                 @Override\r
                 public void perform(WriteGraph graph) throws DatabaseException {\r
                     SysdynResource sr = SysdynResource.getInstance(graph);\r
-                    graph.claimLiteral(expression, sr.HasLookup, table);\r
+                    graph.claimLiteral(expression, sr.WithLookupExpression_lookup, table);\r
                 }\r
             });\r
 \r
index 5da8f765a1d517a62a4a8cfef46ce364bdb46129..1aff73aa9d452a835c4c51687c8915209cd57efc 100644 (file)
@@ -228,7 +228,7 @@ public class ExpressionWidget implements Widget {
                                        Collection<Resource> expressionLists = OrderedSetUtils.getOwnerLists(graph, expr, l0.OrderedSet);\r
                                        Resource variable = null;\r
                                        if(expressionLists.size() == 1)\r
-                                               variable = graph.getPossibleObject(expressionLists.iterator().next(), sr.HasExpressions_Inverse);\r
+                                               variable = graph.getPossibleObject(expressionLists.iterator().next(), sr.Variable_expressions_Inverse);\r
                                        return variable;\r
                                }\r
                        });\r
index cfc2810c67b93ae4cab669d29ae87445fc0e8909..2491d6e2e271ca8ac84a9cc17026f1eeb0b57a18 100644 (file)
@@ -70,9 +70,9 @@ public class ModuleInputEditingSupport extends EditingSupport {
                                Layer0 l0 = Layer0.getInstance(graph);\r
                             SysdynResource sr = SysdynResource.getInstance(graph);\r
                             HashMap<String, Resource> result = new HashMap<String, Resource>();\r
-                            for(Resource dependency : graph.syncRequest(new ObjectsWithType(module, sr.IsHeadOf, sr.Dependency))) {\r
-                                if(graph.getPossibleObject(dependency, sr.RefersTo) == null ||\r
-                                        graph.getPossibleObject(dependency, sr.RefersTo).equals(inputVariable)) {\r
+                            for(Resource dependency : graph.syncRequest(new ObjectsWithType(module, sr.Variable_isHeadOf, sr.Dependency))) {\r
+                                if(graph.getPossibleObject(dependency, sr.Dependency_refersTo) == null ||\r
+                                        graph.getPossibleObject(dependency, sr.Dependency_refersTo).equals(inputVariable)) {\r
                                     Resource output = graph.getSingleObject(dependency, sr.HasTail);\r
                                     result.put((String)graph.getRelatedValue(output, l0.HasName), dependency);\r
                                 }\r
index 7a69d742a0d8cef16c5e2efdec98101bd1c9f6f6..91d3c4871d577d955b9be1a7aaa8318c9bb9f0c9 100644 (file)
@@ -70,10 +70,10 @@ public class ModuleOutputEditingSupport  extends EditingSupport {
                                Layer0 l0 = Layer0.getInstance(graph);\r
                             SysdynResource sr = SysdynResource.getInstance(graph);\r
                             HashMap<String, Resource> result = new HashMap<String, Resource>();\r
-                            for(Resource dependency : graph.syncRequest(new ObjectsWithType(module, sr.IsTailOf, sr.Dependency))) {\r
-                                if(graph.getPossibleObject(dependency, sr.RefersTo) == null \r
-                                               || !graph.hasStatement(graph.getPossibleObject(dependency, sr.RefersTo), l0.HasName)\r
-                                               || graph.getPossibleObject(dependency, sr.RefersTo).equals(outputVariable)) {\r
+                            for(Resource dependency : graph.syncRequest(new ObjectsWithType(module, sr.Variable_isTailOf, sr.Dependency))) {\r
+                                if(graph.getPossibleObject(dependency, sr.Dependency_refersTo) == null \r
+                                               || !graph.hasStatement(graph.getPossibleObject(dependency, sr.Dependency_refersTo), l0.HasName)\r
+                                               || graph.getPossibleObject(dependency, sr.Dependency_refersTo).equals(outputVariable)) {\r
                                     Resource input = graph.getSingleObject(dependency, sr.HasHead);\r
                                     result.put((String)graph.getRelatedValue(input, l0.HasName), dependency);\r
                                 }\r
index 5aeeaec77acfdefc9ff0b835d3116dcedf91a7f8..6bebab0ef3f65c803ea5acaabac2b6db8cbc79a2 100644 (file)
@@ -93,14 +93,14 @@ public class ReferenceRow {
             @Override\r
             public void perform(WriteGraph graph) throws DatabaseException {\r
                 SysdynResource sr = SysdynResource.getInstance(graph);\r
-                if(getDependency() != null && graph.hasStatement(getDependency(), sr.RefersTo))\r
-                    graph.deny(getDependency(), sr.RefersTo);\r
-                if(dependency != null && graph.hasStatement(dependency, sr.RefersTo))\r
-                       graph.deny(dependency, sr.RefersTo);\r
+                if(getDependency() != null && graph.hasStatement(getDependency(), sr.Dependency_refersTo))\r
+                    graph.deny(getDependency(), sr.Dependency_refersTo);\r
+                if(dependency != null && graph.hasStatement(dependency, sr.Dependency_refersTo))\r
+                       graph.deny(dependency, sr.Dependency_refersTo);\r
                 setDependency(null);\r
                 if(dependency != null) {\r
                     setDependency(dependency);\r
-                    graph.claim(getDependency(), SysdynResource.getInstance(graph).RefersTo, getVariable());\r
+                    graph.claim(getDependency(), SysdynResource.getInstance(graph).Dependency_refersTo, getVariable());\r
                 }\r
             }\r
         });\r
index 4e8374e70a185168ac9e3c93455fcc1c2110fe0e..89da1e7afe3455b8ca838f32178ed049215d8d55 100644 (file)
@@ -224,7 +224,7 @@ public class ShortcutTabWidget implements Widget {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                Layer0 l0 = Layer0.getInstance(graph);\r
 \r
-               Collection<Resource> dependencies = graph.getObjects(r, sr.IsHeadOf);\r
+               Collection<Resource> dependencies = graph.getObjects(r, sr.Variable_isHeadOf);\r
 \r
                for(Resource d : dependencies) {\r
                        if(graph.isInstanceOf(d, sr.Dependency)) {\r
index 6f7546ed07b73fa7f1921ba58023731e8bdd0a08..dbdf9514b952b6d07d6f8994cd7d1b33d56574d1 100644 (file)
@@ -96,7 +96,7 @@ public class ValveOrientationGroup extends WidgetImpl {
             if(symbol == null)\r
                 return Boolean.FALSE;\r
             \r
-            Resource orientation = graph.getPossibleObject(symbol, sr.HasValveOrientation);\r
+            Resource orientation = graph.getPossibleObject(symbol, sr.ValveSymbol_orientation);\r
             \r
             if(orientation == null)\r
                 return defaultSelected;\r
@@ -127,14 +127,14 @@ public class ValveOrientationGroup extends WidgetImpl {
             if(symbol == null)\r
                 return;\r
             \r
-            if(graph.hasStatement(symbol, sr.HasValveOrientation))\r
-                graph.deny(symbol, sr.HasValveOrientation);\r
-            graph.claim(symbol, sr.HasValveOrientation, graph.getResource(uri));\r
+            if(graph.hasStatement(symbol, sr.ValveSymbol_orientation))\r
+                graph.deny(symbol, sr.ValveSymbol_orientation);\r
+            graph.claim(symbol, sr.ValveSymbol_orientation, graph.getResource(uri));\r
             \r
-            if(graph.hasStatement(symbol, sr.HasTextLocation))\r
-                graph.deny(symbol, sr.HasTextLocation);\r
+            if(graph.hasStatement(symbol, sr.ValveSymbol_textLocation))\r
+                graph.deny(symbol, sr.ValveSymbol_textLocation);\r
             if(sr.Vertical.equals(graph.getResource(uri)))\r
-                graph.claim(symbol, sr.HasTextLocation, sr.Right);\r
+                graph.claim(symbol, sr.ValveSymbol_textLocation, sr.Right);\r
                 \r
         }\r
         \r
index 69d8376af750d9f61a0643f054b334304b41c7df..87615966bab29af32d56a774f77b91a9e9f85ae3 100644 (file)
@@ -111,7 +111,7 @@ public class ValveTextLocationGroup extends WidgetImpl {
             if(symbol == null)\r
                 return Boolean.FALSE;\r
             \r
-            Resource location = graph.getPossibleObject(symbol, sr.HasTextLocation);\r
+            Resource location = graph.getPossibleObject(symbol, sr.ValveSymbol_textLocation);\r
             \r
             if(location == null)\r
                 return defaultSelected;\r
@@ -142,9 +142,9 @@ public class ValveTextLocationGroup extends WidgetImpl {
             if(symbol == null)\r
                 return;\r
             \r
-            if(graph.hasStatement(symbol, sr.HasTextLocation))\r
-                graph.deny(symbol, sr.HasTextLocation);\r
-            graph.claim(symbol, sr.HasTextLocation, graph.getResource(uri));\r
+            if(graph.hasStatement(symbol, sr.ValveSymbol_textLocation))\r
+                graph.deny(symbol, sr.ValveSymbol_textLocation);\r
+            graph.claim(symbol, sr.ValveSymbol_textLocation, graph.getResource(uri));\r
         }\r
         \r
     }\r
index da74629d3d2625fb02266828c3cce4511af73014..e5aaef7e545a48e001da43b53d591863bc10b1a4 100644 (file)
@@ -82,7 +82,7 @@ public class EnumerationIndexNode  extends AbstractNode<Resource> implements IMo
                            @Override\r
                            public void perform(WriteGraph graph) throws DatabaseException {\r
                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                               graph.claimLiteral(data, sr.ShowEnumerationIndexInCharts, selected);\r
+                               graph.claimLiteral(data, sr.EnumerationIndex_showEnumerationIndexInCharts, selected);\r
                            }\r
                        });\r
                } catch (DatabaseException e) {\r
index fcf13e91fefceae3354c84692b17ae4728d605b7..dc9c290a4e19178806b8b59b86e2117bea16292f 100644 (file)
@@ -21,7 +21,7 @@ public class EnumerationIndexes extends ViewpointContributorImpl<Resource> {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                if(!graph.isInstanceOf(input, sr.Enumeration))\r
                        return null;\r
-               Resource enumerationIndexList = graph.getPossibleObject(input, sr.HasEnumerationIndexes);\r
+               Resource enumerationIndexList = graph.getPossibleObject(input, sr.Enumeration_enumerationIndexes);\r
                if(enumerationIndexList == null)\r
                        return null;\r
         ArrayList<AbstractNode<Resource>> result = new ArrayList<AbstractNode<Resource>>();\r
index bbaaa54a72995ec173564f3eabdc062eecafdf76..801b48530cf32c4813b17ee04a4653163e5a2a53 100644 (file)
@@ -25,7 +25,7 @@ public class EnumerationLabeler extends ColumnLabelerContributorImpl<Enumeration
                \r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                \r
-               Resource enumerationIndexes = graph.getPossibleObject(input.data, sr.HasEnumerationIndexes);\r
+               Resource enumerationIndexes = graph.getPossibleObject(input.data, sr.Enumeration_enumerationIndexes);\r
                ListIterator<Resource> indexes = OrderedSetUtils.iterator(graph, enumerationIndexes);\r
                StringBuilder sb = new StringBuilder();\r
                sb.append("[");\r
@@ -37,7 +37,7 @@ public class EnumerationLabeler extends ColumnLabelerContributorImpl<Enumeration
                }\r
                sb.append("]");\r
                \r
-               Boolean relaceable = graph.getPossibleRelatedValue(input.data, sr.IsReplaceable);\r
+               Boolean relaceable = graph.getPossibleRelatedValue(input.data, sr.Enumeration_isReplaceable);\r
                if(Boolean.TRUE.equals(relaceable)) {\r
                        sb.append(" Replaceable");\r
                }\r
index 0d5f3fb8192d1d692cdd684e5232e905451617ce..6c2b6781746611133f7d10d1cbc5dc713990b8d4 100644 (file)
@@ -51,7 +51,7 @@ public class RedeclarationNode  extends AbstractNode<Resource> implements IModif
                try {\r
                        Resource redeclaration = getRedeclaration(graph);\r
                        if(redeclaration != null) {\r
-                               result = graph.getSingleObject(redeclaration, sr.ReplacingEnumeration);\r
+                               result = graph.getSingleObject(redeclaration, sr.Redeclaration_replacingEnumeration);\r
                        }\r
                } catch(DatabaseException e) {\r
                        e.printStackTrace();\r
@@ -72,8 +72,8 @@ public class RedeclarationNode  extends AbstractNode<Resource> implements IModif
        public Resource getRedeclaration(ReadGraph graph) {\r
                try {\r
                        SysdynResource sr = SysdynResource.getInstance(graph);\r
-                       for(Resource redeclaration : graph.syncRequest(new ObjectsWithType(module, sr.HasRedeclaration, sr.Redeclaration))) {\r
-                               Resource replacedEnumeration = graph.getPossibleObject(redeclaration, sr.ReplacedEnumeration);\r
+                       for(Resource redeclaration : graph.syncRequest(new ObjectsWithType(module, sr.Module_redeclaration, sr.Redeclaration))) {\r
+                               Resource replacedEnumeration = graph.getPossibleObject(redeclaration, sr.Redeclaration_replacedEnumeration);\r
                                if(replacedEnumeration != null && replacedEnumeration.equals(getReplacedEnumeration())) {\r
                                        return redeclaration;\r
                                }\r
@@ -89,11 +89,11 @@ public class RedeclarationNode  extends AbstractNode<Resource> implements IModif
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                Resource oldRedeclaration = getRedeclaration(graph);\r
                if(oldRedeclaration != null || redeclaration == null) {\r
-                       graph.deny(module, sr.HasRedeclaration, oldRedeclaration);\r
+                       graph.deny(module, sr.Module_redeclaration, oldRedeclaration);\r
                }\r
                \r
                if(redeclaration != null)\r
-                       graph.claim(module, sr.HasRedeclaration, redeclaration);\r
+                       graph.claim(module, sr.Module_redeclaration, redeclaration);\r
                \r
                } catch (DatabaseException e) {\r
                        e.printStackTrace();\r
@@ -148,8 +148,8 @@ public class RedeclarationNode  extends AbstractNode<Resource> implements IModif
                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
                                                                Resource redeclaration = GraphUtils.create2(graph, \r
                                                                                sr.Redeclaration, \r
-                                                                               sr.ReplacedEnumeration, getReplacedEnumeration(),\r
-                                                                               sr.ReplacingEnumeration, enumObject);\r
+                                                                               sr.Redeclaration_replacedEnumeration, getReplacedEnumeration(),\r
+                                                                               sr.Redeclaration_replacingEnumeration, enumObject);\r
                                                                setRedeclaration(graph, redeclaration);\r
                                                        }\r
                                                        \r
index 78faa6b33fb64dd84098f29cd19fef94c983698c..7f8a1fa2c72f0c2c6ba030c7c4074a442b4c1095 100644 (file)
@@ -44,7 +44,7 @@ public class ReplaceableEnumerations  extends ViewpointContributorImpl<Resource>
             return result;\r
         \r
                for(Resource r : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Enumeration))) {\r
-                       if(Boolean.TRUE.equals(graph.getRelatedValue(r, sr.IsReplaceable)))\r
+                       if(Boolean.TRUE.equals(graph.getRelatedValue(r, sr.Enumeration_isReplaceable)))\r
                                result.add(new RedeclarationNode(graph, input, r));\r
                }\r
                \r
index 06caf4d47de7465bd22b82ee30f7de83112c56ae..0dd0a49a46e977bb422194b63f2e32cea1c7808f 100644 (file)
@@ -61,7 +61,7 @@ public class ReplaceableIndexesWidget implements Widget {
                 @Override\r
                 public void run(ReadGraph graph) throws DatabaseException {\r
                     SysdynResource sr = SysdynResource.getInstance(graph);\r
-                    final Boolean replaceable = graph.getPossibleRelatedValue(variable, sr.IsReplaceable);\r
+                    final Boolean replaceable = graph.getPossibleRelatedValue(variable, sr.Enumeration_isReplaceable);\r
                     if(replaceable != null)\r
                        selected = replaceable;\r
                     final Button button = getWidget();\r
@@ -90,12 +90,12 @@ public class ReplaceableIndexesWidget implements Widget {
             @Override\r
             public void apply(WriteGraph graph, Resource input) throws DatabaseException {\r
                 SysdynResource sr =  SysdynResource.getInstance(graph);\r
-                Boolean replaceable = graph.getPossibleRelatedValue(input, sr.IsReplaceable);\r
+                Boolean replaceable = graph.getPossibleRelatedValue(input, sr.Enumeration_isReplaceable);\r
                 if(Boolean.TRUE.equals(replaceable)) {\r
-                    graph.claimLiteral(input, sr.IsReplaceable, false);\r
+                    graph.claimLiteral(input, sr.Enumeration_isReplaceable, false);\r
                     selected = false;\r
                 } else {\r
-                       graph.claimLiteral(input, sr.IsReplaceable, true);\r
+                       graph.claimLiteral(input, sr.Enumeration_isReplaceable, true);\r
                        selected = true;\r
                 }\r
             }\r
index 232db37b6bd4afff96a55a60d14b9ac8aff9639a..da412f47a2d5cf6b64b0a51142fd83809cd7c549 100644 (file)
@@ -13,7 +13,7 @@ public class ShowInChartsCheckBox extends CheckedStateContributor<EnumerationInd
        public CheckedState getState(ReadGraph graph, EnumerationIndexNode input)\r
                        throws DatabaseException {\r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
-               Boolean selected = graph.getPossibleRelatedValue(input.data, sr.ShowEnumerationIndexInCharts, Bindings.BOOLEAN);\r
+               Boolean selected = graph.getPossibleRelatedValue(input.data, sr.EnumerationIndex_showEnumerationIndexInCharts, Bindings.BOOLEAN);\r
                return selected ? CheckedState.CHECKED : CheckedState.NOT_CHECKED;\r
        }\r
        \r
index 35d094f0ef05039bce4e5b674746f495fbb6ac04..7d67aa436a8dd648716b6682932d640c2a79266a 100644 (file)
@@ -20,7 +20,7 @@ public class UsedEnumerations extends ViewpointContributorImpl<Resource> {
                \r
                ArrayList<AbstractNode<Resource>> result = new ArrayList<AbstractNode<Resource>>();\r
                \r
-               Resource arrayIndexes = graph.getPossibleObject(input, sr.HasArrayIndexes);\r
+               Resource arrayIndexes = graph.getPossibleObject(input, sr.Variable_arrayIndexes);\r
                if(arrayIndexes == null) {\r
                        return result;\r
                }\r
index 96c6268e776de6e308db7f62dd4e30741162c322..4f4abc53553d42d0854828e458f5752f976dd863 100644 (file)
@@ -90,7 +90,7 @@ public class BasicExpression implements IExpression {
                     public String perform(ReadGraph graph) throws DatabaseException {\r
                         SysdynResource sr = SysdynResource.getInstance(graph);\r
                         if (expression != null) {\r
-                            String equation = graph.getPossibleRelatedValue(expression, sr.HasEquation);\r
+                            String equation = graph.getPossibleRelatedValue(expression, sr.Expression_equation);\r
                             if(equation != null)\r
                                return equation;\r
                         }\r
@@ -158,12 +158,12 @@ public class BasicExpression implements IExpression {
                            return;\r
                        Resource ownerList = ownerLists.iterator().next();\r
                        final Resource newExpression = GraphUtils.create2(g, expressionType, \r
-                                       sr.HasEquation, currentText);\r
-                       String arrayRange = g.getPossibleRelatedValue(expression, sr.HasArrayRange, Bindings.STRING);\r
+                                       sr.Expression_equation, currentText);\r
+                       String arrayRange = g.getPossibleRelatedValue(expression, sr.Expression_arrayRange, Bindings.STRING);\r
                        if(arrayRange != null)\r
-                               g.claimLiteral(newExpression, sr.HasArrayRange, arrayRange);\r
+                               g.claimLiteral(newExpression, sr.Expression_arrayRange, arrayRange);\r
                        \r
-                       final Resource variable = g.getSingleObject(ownerList, sr.HasExpressions_Inverse);\r
+                       final Resource variable = g.getSingleObject(ownerList, sr.Variable_expressions_Inverse);\r
                        OrderedSetUtils.replace(g, ownerList, expression, newExpression);\r
                        g.deny(expression, l0.PartOf);\r
                        g.claim(newExpression, l0.PartOf, variable);\r
@@ -175,16 +175,16 @@ public class BasicExpression implements IExpression {
                                                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
                                                                if(variable != null) {\r
-                                                                       if(graph.hasStatement(variable, sr.HasActiveExpression))\r
-                                                                               graph.deny(variable, sr.HasActiveExpression);\r
-                                                                       graph.claim(variable, sr.HasActiveExpression, newExpression);\r
+                                                                       if(graph.hasStatement(variable, sr.IndependentVariable_activeExpression))\r
+                                                                               graph.deny(variable, sr.IndependentVariable_activeExpression);\r
+                                                                       graph.claim(variable, sr.IndependentVariable_activeExpression, newExpression);\r
                                                                }\r
                                                        }\r
                                                }\r
                                                );\r
                     } else {\r
                         // Claim value for the expression\r
-                       g.claimLiteral(expression, sr.HasEquation, currentText);\r
+                       g.claimLiteral(expression, sr.Expression_equation, currentText);\r
                     }\r
                 }\r
 \r
index 8494a8c9c618e11ef917577262b318d07c1754bc..d9401442f9512d3e55f3c3c38d83345f896e6a1c 100644 (file)
@@ -243,11 +243,11 @@ public class DelayExpression implements IExpression {
                         // Create a new DelayExpression, if the old expression was something else\r
                         Resource ownerList = OrderedSetUtils.getSingleOwnerList(g, expression);\r
                         final Resource newExpression = GraphUtils.create2(g, sr.DelayExpression);\r
-                        String arrayRange = g.getPossibleRelatedValue(expression, sr.HasArrayRange, Bindings.STRING);\r
+                        String arrayRange = g.getPossibleRelatedValue(expression, sr.Expression_arrayRange, Bindings.STRING);\r
                         if(arrayRange != null)\r
-                            g.claimLiteral(newExpression, sr.HasArrayRange, arrayRange);\r
+                            g.claimLiteral(newExpression, sr.Expression_arrayRange, arrayRange);\r
 \r
-                        final Resource variable = g.getSingleObject(ownerList, sr.HasExpressions_Inverse);\r
+                        final Resource variable = g.getSingleObject(ownerList, sr.Variable_expressions_Inverse);\r
                         OrderedSetUtils.replace(g, ownerList, expression, newExpression);\r
                         g.deny(expression, l0.PartOf);\r
                         g.claim(newExpression, l0.PartOf, variable);\r
@@ -257,9 +257,9 @@ public class DelayExpression implements IExpression {
                             @Override\r
                             public void perform(WriteGraph graph) throws DatabaseException {\r
                                 SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                if(graph.hasStatement(variable, sr.HasActiveExpression))\r
-                                    graph.deny(variable, sr.HasActiveExpression);\r
-                                graph.claim(variable, sr.HasActiveExpression, newExpression);\r
+                                if(graph.hasStatement(variable, sr.IndependentVariable_activeExpression))\r
+                                    graph.deny(variable, sr.IndependentVariable_activeExpression);\r
+                                graph.claim(variable, sr.IndependentVariable_activeExpression, newExpression);\r
                             }\r
                         }\r
                                 );\r
index 96d833dca8b1bd8de197f2b3ec292375268a67d7..ec2caa18933c1f36e36ba1f7eb9abcdce299dca4 100644 (file)
@@ -96,7 +96,7 @@ public class StockExpression implements IExpression {
                     public String perform(ReadGraph graph) throws DatabaseException {\r
                         SysdynResource sr = SysdynResource.getInstance(graph);\r
                         if (graph.isInstanceOf(expression, sr.StockExpression)) {\r
-                            String initialEquation = graph.getPossibleRelatedValue(expression, sr.HasInitialEquation);\r
+                            String initialEquation = graph.getPossibleRelatedValue(expression, sr.StockExpression_initialEquation);\r
                             return initialEquation != null ? initialEquation : "";\r
                         } else {\r
                             return "";\r
@@ -149,12 +149,12 @@ public class StockExpression implements IExpression {
                        }\r
                        g.claim(expression, l0.InstanceOf, null, sr.StockExpression);\r
                        \r
-                        Resource variable = g.getSingleObject(expressionList, sr.HasExpressions_Inverse);\r
+                        Resource variable = g.getSingleObject(expressionList, sr.Variable_expressions_Inverse);\r
                         OrderedSetUtils.replace(g, expressionList, temp, expression);\r
                         g.deny(expression, l0.PartOf);\r
                         g.claim(expression, l0.PartOf, variable);\r
                     }\r
-                    g.claimLiteral(expression, sr.HasInitialEquation, currentText);\r
+                    g.claimLiteral(expression, sr.StockExpression_initialEquation, currentText);\r
                 }\r
 \r
             });\r
@@ -186,7 +186,7 @@ public class StockExpression implements IExpression {
                     \r
                     // find the variable\r
                     Resource expressionList = OrderedSetUtils.getSingleOwnerList(graph, expression);\r
-                    Resource variable = graph.getPossibleObject(expressionList, sr.HasExpressions_Inverse);\r
+                    Resource variable = graph.getPossibleObject(expressionList, sr.Variable_expressions_Inverse);\r
                     if(variable == null)\r
                        return "";\r
                     \r
@@ -196,7 +196,7 @@ public class StockExpression implements IExpression {
                        \r
                        Stock stock = (Stock)model.getElement(variable);\r
                     \r
-                       String range = graph.getPossibleRelatedValue(expression, sr.HasArrayRange);\r
+                       String range = graph.getPossibleRelatedValue(expression, sr.Expression_arrayRange);\r
                        if(range == null)\r
                                range = "";\r
 \r
index 9af73a64b5d60aa6c4e71aa77874da65f9726281..c8e109624990bf9710d00f2604b96012d672efe7 100644 (file)
@@ -151,7 +151,7 @@ public class WithLookupExpression implements IExpression {
                 SysdynResource sr = SysdynResource.getInstance(graph);\r
                 String result = "";\r
                 if (expr != null && graph.isInstanceOf(expr, sr.WithLookupExpression)) {\r
-                    result = graph.getPossibleRelatedValue(expr, sr.HasLookup);\r
+                    result = graph.getPossibleRelatedValue(expr, sr.WithLookupExpression_lookup);\r
                 }\r
                 return result;\r
             }\r
@@ -215,8 +215,8 @@ public class WithLookupExpression implements IExpression {
                         Auxiliary results = new Auxiliary();\r
                         SysdynResource sr = SysdynResource.getInstance(graph);\r
                         if (expression != null && graph.isInstanceOf(expression, sr.WithLookupExpression)) {\r
-                            results.equation = graph.getPossibleRelatedValue(expression, sr.HasEquation);\r
-                            results.lookup = graph.getPossibleRelatedValue(expression, sr.HasLookup);\r
+                            results.equation = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_expression);\r
+                            results.lookup = graph.getPossibleRelatedValue(expression, sr.WithLookupExpression_lookup);\r
                         } else {\r
                             results.equation = "";\r
                             results.lookup = "";\r
@@ -273,15 +273,15 @@ public class WithLookupExpression implements IExpression {
                        \r
                        Resource ownerList = OrderedSetUtils.getSingleOwnerList(g, expression);\r
                        final Resource newExpression = GraphUtils.create2(g, sr.WithLookupExpression,\r
-                                       sr.HasMinX, 0.0,\r
-                                       sr.HasMaxX, 10.0,\r
-                                       sr.HasMinY, 0.0,\r
-                                       sr.HasMaxY, 10.0);\r
-                       String arrayRange = g.getPossibleRelatedValue(expression, sr.HasArrayRange, Bindings.STRING);\r
+                                       sr.WithLookupExpression_minX, 0.0,\r
+                                       sr.WithLookupExpression_maxX, 10.0,\r
+                                       sr.WithLookupExpression_minY, 0.0,\r
+                                       sr.WithLookupExpression_maxY, 10.0);\r
+                       String arrayRange = g.getPossibleRelatedValue(expression, sr.Expression_arrayRange, Bindings.STRING);\r
                        if(arrayRange != null)\r
-                               g.claimLiteral(newExpression, sr.HasArrayRange, arrayRange);\r
+                               g.claimLiteral(newExpression, sr.Expression_arrayRange, arrayRange);\r
                        \r
-                        final Resource variable = g.getSingleObject(ownerList, sr.HasExpressions_Inverse);\r
+                        final Resource variable = g.getSingleObject(ownerList, sr.Variable_expressions_Inverse);\r
                         OrderedSetUtils.replace(g, ownerList, expression, newExpression);\r
                         g.deny(expression, l0.PartOf);\r
                         g.claim(newExpression, l0.PartOf, variable);\r
@@ -291,17 +291,17 @@ public class WithLookupExpression implements IExpression {
                                                        @Override\r
                                                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                                                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                                               if(graph.hasStatement(variable, sr.HasActiveExpression))\r
-                                                                       graph.deny(variable, sr.HasActiveExpression);\r
-                                                               graph.claim(variable, sr.HasActiveExpression, newExpression);\r
+                                                               if(graph.hasStatement(variable, sr.IndependentVariable_activeExpression))\r
+                                                                       graph.deny(variable, sr.IndependentVariable_activeExpression);\r
+                                                               graph.claim(variable, sr.IndependentVariable_activeExpression, newExpression);\r
                                                        }\r
                                                }\r
                                                );\r
                        expr = newExpression;\r
                        \r
                     }\r
-                    g.claimLiteral(expr, sr.HasEquation, currentExpression);\r
-                    g.claimLiteral(expr, sr.HasLookup, currentLookupTable);\r
+                    g.claimLiteral(expr, sr.WithLookupExpression_expression, currentExpression);\r
+                    g.claimLiteral(expr, sr.WithLookupExpression_lookup, currentLookupTable);\r
                 }\r
             });\r
         }\r
index 7c07e305c4240349a75f9687fd63ca9c2fd21767..a39568bc470175ee1634cdaae9f3cbb669ac04f5 100644 (file)
@@ -131,7 +131,7 @@ public class FunctionCodeWidget implements Widget {
                                @Override\r
                                public String perform(ReadGraph graph) throws DatabaseException {\r
                                        String code = graph.getPossibleRelatedValue(\r
-                                                       function, SysdynResource.getInstance(graph).HasModelicaFunctionCode);\r
+                                                       function, SysdynResource.getInstance(graph).SysdynModelicaFunction_modelicaFunctionCode);\r
                                        return code;\r
                                }\r
                                \r
@@ -194,7 +194,7 @@ public class FunctionCodeWidget implements Widget {
                        public void perform(WriteGraph graph) throws DatabaseException {\r
                                graph.claimLiteral(\r
                                                function, \r
-                                               SysdynResource.getInstance(graph).HasModelicaFunctionCode, \r
+                                               SysdynResource.getInstance(graph).SysdynModelicaFunction_modelicaFunctionCode, \r
                                                code);\r
                                Resource library = graph.getSingleObject(function, Layer0.getInstance(graph).PartOf);\r
                                FunctionUtils.updateFunctionFileForLibrary(graph, library);\r
index f641a3c788aa1337a45094004703d2fdee386a9f..a1b8cd469a92f111883cbc7c9a8d6a27b002a469 100644 (file)
@@ -15,6 +15,7 @@ import org.eclipse.swt.SWT;
 import org.eclipse.swt.dnd.DND;\r
 import org.eclipse.swt.dnd.DropTargetAdapter;\r
 import org.eclipse.swt.dnd.DropTargetEvent;\r
+import org.eclipse.swt.widgets.Composite;\r
 import org.eclipse.swt.widgets.Display;\r
 import org.simantics.db.Resource;\r
 import org.simantics.ui.utils.AdaptionUtils;\r
@@ -26,12 +27,12 @@ import org.simantics.ui.utils.AdaptionUtils;
  */\r
 public class ChartDropTarget extends DropTargetAdapter {\r
     \r
-    private ChartPanelSeparator separator;\r
+    private Composite separator;\r
     private ChartPanelElement element;\r
     private Display display;\r
     private ChartPanel panel;\r
     \r
-    public ChartDropTarget(ChartPanelSeparator separator, ChartPanelElement element, ChartPanel panel) {\r
+    public ChartDropTarget(Composite separator, ChartPanelElement element, ChartPanel panel) {\r
         this.separator = separator;\r
         this.display = separator.getDisplay();\r
         this.element = element;\r
index a82b6c29526a67478c6b464a4771338fb4d02d61..180212780c9bc92297166084d0d3265c51de74de 100644 (file)
@@ -157,7 +157,6 @@ public class ChartPanel extends ViewPart {
         sc.setExpandVertical(true);\r
         sc.getVerticalBar().setIncrement(sc.getVerticalBar().getIncrement()*3);\r
         sc.getHorizontalBar().setIncrement(sc.getHorizontalBar().getIncrement()*3);\r
-        setupDropTarget();\r
 \r
         body = new Composite(sc, SWT.NONE);\r
         GridLayoutFactory.fillDefaults().margins(3, 0).spacing(0, 0).applyTo(body);\r
@@ -165,6 +164,9 @@ public class ChartPanel extends ViewPart {
 \r
         sc.setContent(body);\r
         createContents();\r
+        \r
+        setupDropTarget();\r
+\r
     }\r
     \r
     /**\r
@@ -342,6 +344,10 @@ public class ChartPanel extends ViewPart {
             }\r
 \r
         });\r
+        \r
+        DropTarget target2 = new DropTarget(body, DND.DROP_COPY | DND.DROP_MOVE);\r
+        target2.setTransfer(new Transfer[] {  LocalObjectTransfer.getTransfer() });\r
+        target2.addDropListener(new ChartDropTarget(body, null, this));\r
 \r
     }\r
 \r
@@ -369,6 +375,8 @@ public class ChartPanel extends ViewPart {
      * @param layout refresh layout. use with vertical layout. \r
      */\r
     public void addChart(Resource chartResource, ChartPanelElement element, boolean layout) {\r
+        if(element == null)\r
+            element = chartElements.get(chartElements.size() - 1);\r
         int index = chartElements.indexOf(element);\r
         if(index >= 0) {\r
             ChartPanelElement e = chartElements.get(index);\r
@@ -457,4 +465,7 @@ public class ChartPanel extends ViewPart {
         });\r
     }\r
 \r
+    public ArrayList<ChartPanelElement> getElements() {\r
+        return chartElements;\r
+    }\r
 }\r
index 5c830dc5750e0b01b792e7af1cfbf188de1569aa..405294a94f76ef759ba2477bdffd1706c0c27541 100644 (file)
@@ -52,10 +52,13 @@ public class ChartPanelElement extends Composite {
             oldData = GridDataFactory.fillDefaults().create();\r
         }\r
 \r
+        int size = panel.getElements().size();\r
         GridData data = (GridData) oldData;\r
         // Horizontal data\r
         data.widthHint = CHART_MINIMUM_WIDTH;\r
-        if(chartResource == null && !panel.isVertical()){\r
+        if(getResource() == null && size == 1) {\r
+            data.grabExcessHorizontalSpace = true;\r
+        } else if(getResource() == null && !panel.isVertical()){\r
             data.grabExcessHorizontalSpace = false;\r
             data.widthHint = SWT.DEFAULT;\r
         } else if(minimized && !panel.isVertical()) {\r
@@ -66,7 +69,9 @@ public class ChartPanelElement extends Composite {
         }\r
 \r
         // Vertical data\r
-        if(!minimized && getResource() != null) {\r
+        if(getResource() == null && size == 1) {\r
+            data.grabExcessVerticalSpace = true;\r
+        } else if(!minimized && getResource() != null) {\r
             data.grabExcessVerticalSpace = true;\r
             data.heightHint = CHART_MINIMUM_HEIGHT;\r
         } else if(!panel.isVertical()){\r
@@ -99,7 +104,7 @@ public class ChartPanelElement extends Composite {
      * @param style The Style of the created chart element\r
      */\r
     public ChartPanelElement(Composite parent, ChartPanel panel, Resource chartResource, boolean minimized, int style) {\r
-        super(parent, style | SWT.NONE);\r
+        super(parent, style | SWT.NONE );\r
         \r
         this.panel = panel;\r
         this.chartResource = chartResource;\r
index d529a8650fc251066889cc5dc52c31c5489b22d2..e0bde1e288899c6de939d298d243420b0d86d999 100644 (file)
@@ -37,13 +37,20 @@ public class ChartPanelSeparator extends Composite {
             oldData = GridDataFactory.fillDefaults().create();\r
         }\r
         GridData data = (GridData) oldData;\r
-        if(panel.isVertical()) { \r
+        // Empty panel -> drop area the size of the whole panel\r
+        if(panel.getElements().size() == 1 && panel.getElements().get(0).getResource() == null) {\r
             data.grabExcessHorizontalSpace = true;\r
-            data.grabExcessVerticalSpace = false;\r
-        } else {\r
-            data.grabExcessHorizontalSpace = false;\r
             data.grabExcessVerticalSpace = true;\r
         }\r
+        else {\r
+            if(panel.isVertical()) { \r
+                data.grabExcessHorizontalSpace = true;\r
+                data.grabExcessVerticalSpace = false;\r
+            } else {\r
+                data.grabExcessHorizontalSpace = false;\r
+                data.grabExcessVerticalSpace = true;\r
+            }\r
+        }\r
         return data;\r
     }\r
 \r
index f0d36edf3117be2876650cc42121db713ae23576..88b0314ff144f16ccd13ee8375e5f7e67fcc70b7 100644 (file)
@@ -193,7 +193,7 @@ public class TrendView extends ViewPart {
             public void run() {\r
                 frame.removeAll();\r
                 if(jFreeChart != null) {\r
-                    panel = new ChartPanel(jFreeChart);\r
+                    panel = new ChartPanel(jFreeChart, false, true, true, true, true);\r
                     frame.add(panel);\r
                 }\r
                 frame.repaint();\r
index 92e8ba4d15738cf4e40056bd7b9d99a092f3462c..3caccec9ba70c2d0943c0ef5f1d19701efe9053f 100644 (file)
@@ -41,7 +41,7 @@ public class ChartUtils {
             // Create range axis\r
             axis = GraphUtils.create2(graph, jfree.NumberAxis,\r
                     l0.HasName, "NumberAxis" + UUID.randomUUID().toString(),\r
-                    l0.HasLabel, NameUtils.findFreshLabel(graph, "Range", plot),\r
+                    l0.HasLabel, NameUtils.findFreshLabel(graph, "Y-axis", plot),\r
                     jfree.Plot_rangeAxis_Inverse, plot,\r
                     l0.PartOf, plot);\r
             \r
@@ -104,7 +104,7 @@ public class ChartUtils {
         // Create series\r
         Resource series = GraphUtils.create2(graph, jfree.Series,\r
                 l0.HasName, "Series" + UUID.randomUUID().toString(),\r
-                jfree.variableRVI, rvi == null ? " Set variable" : rvi,\r
+                jfree.variableRVI, rvi == null ? " <Write variable name>" : rvi,\r
                 l0.PartOf, dataset);\r
 \r
         // Add series to the dataset's series list\r
index 35cf2eec22c7d26f9386789505e6942123a29edb..fa2fa2c49f3318da864ab3f4b98dff16a3a5b4d1 100644 (file)
@@ -89,7 +89,7 @@ public class XYDataset extends AbstractDataset {
                     Resource rendererResource = graph.getPossibleObject(resource, jfree.Dataset_renderer);\r
                     if(rendererResource != null)\r
                         renderer = graph.adapt(rendererResource, IRenderer.class);\r
-                    \r
+\r
                     ArrayList<TempSeries> series = new ArrayList<TempSeries>();\r
 \r
                     String realizationURI = getRealizationURI(graph);\r
@@ -128,10 +128,13 @@ public class XYDataset extends AbstractDataset {
 \r
                                 Resource c = graph.getPossibleObject(r, jfree.color);\r
                                 Color color = c == null ? null : G2DUtils.getColor(graph, c);\r
+                                \r
+                                String label = graph.getPossibleRelatedValue(r, Layer0.getInstance(graph).HasLabel);\r
 \r
                                 // Get a variable for the series\r
                                 Variable v = Variables.getVariable(graph, realizationURI + rvi);\r
-\r
+                                if(v == null)\r
+                                    return new Pair<ArrayList<TempSeries>, IRenderer>(series, renderer);\r
 \r
                                 // Get values\r
                                 Object object =  v.getPossiblePropertyValue(graph, SysdynVariableProperties.ACTIVE_DATASETS , Bindings.VARIANT);\r
@@ -185,6 +188,8 @@ public class XYDataset extends AbstractDataset {
                                     if(ta!=null && va!=null && (va.length == ta.length)) {\r
                                         // Add series if everything OK\r
                                         String name = dataset.name;\r
+                                        if(label != null)\r
+                                            name = label;\r
                                         if(dataset.result != null && !dataset.result.isEmpty())\r
                                             name = name + " : " + dataset.result;\r
                                         series.add(new TempSeries(name, new double[][] {ta, va}, width, color));\r
@@ -223,6 +228,8 @@ public class XYDataset extends AbstractDataset {
                                 try {\r
                                     // Get a variable for the series\r
                                     Variable v = Variables.getVariable(graph, realizationURI + rvi);\r
+                                    if(v == null)\r
+                                        return null;\r
                                     Double time = v.getPossiblePropertyValue(graph, SysdynVariableProperties.TIME , Bindings.DOUBLE);\r
                                     return time;\r
                                 } catch (MissingVariableException e) {\r
@@ -419,9 +426,29 @@ public class XYDataset extends AbstractDataset {
     @Override\r
     public AbstractRenderer getRenderer() {\r
         if(renderer == null) {\r
-            XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(true, false);\r
-            renderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator());\r
-            return renderer;\r
+\r
+            try {\r
+                renderer = SimanticsUI.getSession().syncRequest(new Read<IRenderer>() {\r
+\r
+                    @Override\r
+                    public IRenderer perform(ReadGraph graph) throws DatabaseException {\r
+                        JFreeChartResource jfree = JFreeChartResource.getInstance(graph);\r
+                        IRenderer renderer = null;\r
+                        Resource rendererResource = graph.getPossibleObject(resource, jfree.Dataset_renderer);\r
+                        if(rendererResource != null)\r
+                            renderer = graph.adapt(rendererResource, IRenderer.class);\r
+                        return renderer;\r
+                    }\r
+                });\r
+            } catch (DatabaseException e) {\r
+            }\r
+            if(renderer == null) {\r
+                XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(true, false);\r
+                renderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator());\r
+                return renderer;\r
+            } else {\r
+                return renderer.getRenderer();\r
+            }\r
         } else {\r
             return renderer.getRenderer();\r
         }\r
@@ -436,7 +463,7 @@ public class XYDataset extends AbstractDataset {
     private String getRealizationURI(ReadGraph graph) throws DatabaseException {\r
         if(resource == null)\r
             return null;\r
-        \r
+\r
         Layer0 l0 = Layer0.getInstance(graph);\r
         ModelingResources mr = ModelingResources.getInstance(graph);\r
 \r
@@ -448,7 +475,7 @@ public class XYDataset extends AbstractDataset {
 \r
         if(model == null)\r
             return null;\r
-        \r
+\r
         // Find the variable realization of the current experiment\r
         String realizationURI = null;\r
         Resource realization = graph.syncRequest(new PossibleActiveExperiment(model));\r
diff --git a/stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/AllVariablesOfModel.java b/stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/AllVariablesOfModel.java
new file mode 100644 (file)
index 0000000..66ae605
--- /dev/null
@@ -0,0 +1,99 @@
+package org.simantics.sysdyn.ui.trend.chart.properties;\r
+\r
+import java.util.ArrayList;\r
+import java.util.Collection;\r
+import java.util.Collections;\r
+import java.util.List;\r
+\r
+import org.simantics.db.ReadGraph;\r
+import org.simantics.db.Resource;\r
+import org.simantics.db.common.request.ObjectsWithType;\r
+import org.simantics.db.common.utils.NameUtils;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.db.request.Read;\r
+import org.simantics.layer0.Layer0;\r
+import org.simantics.simulation.ontology.SimulationResource;\r
+import org.simantics.structural.stubs.StructuralResource2;\r
+import org.simantics.sysdyn.SysdynResource;\r
+import org.simantics.utils.strings.AlphanumComparator;\r
+\r
+/**\r
+ * Request for getting all variables of a model in a String array. Includes also \r
+ * variables inside modules.\r
+ * \r
+ * @author Teemu Lempinen\r
+ *\r
+ */\r
+public class AllVariablesOfModel implements Read<String[]>{\r
+    \r
+    private Resource model;\r
+    \r
+    public AllVariablesOfModel(Resource model) {\r
+        this.model = model;\r
+    }\r
+\r
+    @Override\r
+    public String[] perform(ReadGraph graph) throws DatabaseException {\r
+        Layer0 l0 = Layer0.getInstance(graph);\r
+        SimulationResource simu = SimulationResource.getInstance(graph);\r
+        SysdynResource sr = SysdynResource.getInstance(graph);\r
+        \r
+        // Find the model of this resource\r
+        Resource model = this.model;\r
+        while(model != null && !graph.isInstanceOf(model, sr.SysdynModel))\r
+            model = graph.getPossibleObject(model, l0.PartOf);\r
+        \r
+        if(model == null)\r
+            return new String[0];\r
+        \r
+        // Find the models configuration\r
+        Resource conf = graph.getSingleObject(model, simu.HasConfiguration);\r
+        List<String> items = new ArrayList<String>();\r
+        \r
+        // Recursively read all configurations and add items\r
+        ReadConfiguration(graph, conf, "", items);\r
+        \r
+        // Add time to the variable list\r
+        items.add("time");\r
+        \r
+        // Finally sort the results\r
+        Collections.sort(items, AlphanumComparator.CASE_INSENSITIVE_COMPARATOR);\r
+        return items.toArray(new String[items.size()]);\r
+    }\r
+    \r
+    /**\r
+     * Read components in a configuration and recursively all module configurations\r
+     * \r
+     * @param graph ReadGraph\r
+     * @param configuration Resource to be read\r
+     * @param path Current path from base realization\r
+     * @param items Found variables\r
+     * @throws DatabaseException\r
+     */\r
+    private void ReadConfiguration(ReadGraph graph, Resource configuration, String path, Collection<String> items) throws DatabaseException {\r
+        SysdynResource sr = SysdynResource.getInstance(graph);\r
+        Layer0 l0 = Layer0.getInstance(graph);\r
+        StructuralResource2 sr2 = StructuralResource2.getInstance(graph);\r
+\r
+        String name;\r
+        for(Resource resource : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.IndependentVariable))) {\r
+            name = path + NameUtils.getSafeName(graph, resource);\r
+            items.add(name);\r
+        }\r
+        \r
+        for(Resource resource : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Input))) {\r
+            name = path + NameUtils.getSafeName(graph, resource);\r
+            items.add(name);\r
+        }\r
+\r
+        for(Resource module : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Module))) {\r
+            Resource instanceOf = graph.getPossibleObject(module, l0.InstanceOf);\r
+            Resource conf = graph.getPossibleObject(instanceOf, sr2.IsDefinedBy);\r
+            if(conf != null) {\r
+                String p = path + NameUtils.getSafeName(graph, module)  + ".";\r
+                ReadConfiguration(graph, conf, p, items);\r
+            }\r
+        }\r
+    }\r
+\r
+}\r
index 40cbadefc777ba073b94b5d5a677a3bdfb2a038d..e7284fc1db298ee0a8ddec1eb49b0c7037546370 100644 (file)
@@ -95,10 +95,12 @@ public class RangeComposite extends Composite implements Widget {
                 try {\r
                     // Find the variable for the current variableRVI\r
                     Variable v = Variables.getVariable(graph, realizationURI + rvi.trim());\r
+                    if(v == null)\r
+                        return null;\r
                     Resource variable = v.getRepresents(graph);\r
                     \r
                     // Return the enumerations assigned to that variable\r
-                    Resource arrayIndexes = graph.getPossibleObject(variable, sr.HasArrayIndexes);\r
+                    Resource arrayIndexes = graph.getPossibleObject(variable, sr.Variable_arrayIndexes);\r
                     if(arrayIndexes != null) {\r
                         LinkedHashMap<String, Resource> result = new LinkedHashMap<String, Resource>();\r
                         for(Resource enumeration : OrderedSetUtils.toList(graph, arrayIndexes)) {\r
@@ -267,7 +269,7 @@ public class RangeComposite extends Composite implements Widget {
         public Map<String, Object> perform(ReadGraph graph, Resource series) throws DatabaseException {\r
             SysdynResource sr = SysdynResource.getInstance(graph);\r
             LinkedHashMap<String, Object> result = new LinkedHashMap<String, Object>();\r
-            Resource enumerationIndexes = graph.getPossibleObject(enumeration, sr.HasEnumerationIndexes);\r
+            Resource enumerationIndexes = graph.getPossibleObject(enumeration, sr.Enumeration_enumerationIndexes);\r
             List<Resource> indexes = OrderedSetUtils.toList(graph, enumerationIndexes);\r
             // First add "All" and "Sum", then all of the enumeration indexes in order\r
             result.put("All", "All");\r
diff --git a/stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/VariableExistsValidator.java b/stable/org.simantics.sysdyn.ui/src/org/simantics/sysdyn/ui/trend/chart/properties/VariableExistsValidator.java
new file mode 100644 (file)
index 0000000..1247e82
--- /dev/null
@@ -0,0 +1,132 @@
+package org.simantics.sysdyn.ui.trend.chart.properties;\r
+\r
+import org.eclipse.jface.dialogs.IInputValidator;\r
+import org.simantics.browsing.ui.swt.widgets.TrackedText;\r
+import org.simantics.browsing.ui.swt.widgets.impl.Widget;\r
+import org.simantics.browsing.ui.swt.widgets.impl.WidgetSupport;\r
+import org.simantics.db.ReadGraph;\r
+import org.simantics.db.Resource;\r
+import org.simantics.db.exception.DatabaseException;\r
+import org.simantics.db.management.ISessionContext;\r
+import org.simantics.db.procedure.Listener;\r
+import org.simantics.db.request.Read;\r
+import org.simantics.layer0.Layer0;\r
+import org.simantics.sysdyn.SysdynResource;\r
+import org.simantics.ui.SimanticsUI;\r
+import org.simantics.ui.utils.AdaptionUtils;\r
+\r
+/**\r
+ * Variable exists validator for tracked text widgets. \r
+ * \r
+ * @author Teemu Lempinen\r
+ *\r
+ */\r
+public class VariableExistsValidator implements IInputValidator, Widget {\r
+\r
+    private String[] names;\r
+    private TrackedText text;\r
+    private boolean allowEmpty;\r
+    \r
+    /**\r
+     * Validate against all variables\r
+     * \r
+     * Do not allow empty input\r
+     * @param support WidgetSupport\r
+     * @param text Text widget\r
+     */\r
+    public VariableExistsValidator(WidgetSupport support, TrackedText text) {\r
+        this(support, text, false);\r
+    }\r
+    \r
+    /**\r
+     * Validate against all variables\r
+     * \r
+     * @param support WidgetSupport\r
+     * @param text Text widget\r
+     * @param allowEmpty Allow empty input text\r
+     */\r
+    public VariableExistsValidator(WidgetSupport support, TrackedText text, boolean allowEmpty) {\r
+        support.register(this);\r
+        names = new String[] {"time"};\r
+        this.text = text;\r
+        this.allowEmpty = allowEmpty;\r
+    }\r
+    \r
+    /**\r
+     * Returns null if there is a variable named newText in the model\r
+     */\r
+    @Override\r
+    public String isValid(String newText) {\r
+        if(newText == null || newText.isEmpty()) {\r
+            if(allowEmpty)\r
+                return null;\r
+            else\r
+                return "Empty name not allowed";\r
+        }\r
+        \r
+        synchronized (names) {\r
+            for(String s : names) {\r
+                if(newText.equals(s))\r
+                    return null;\r
+            }\r
+        }\r
+        \r
+        return "Not a valid variable name";\r
+    }\r
+\r
+    @Override\r
+    public void setInput(ISessionContext context, Object input) {\r
+        final Resource resource = AdaptionUtils.adaptToSingle(input, Resource.class);\r
+        \r
+        if(resource == null) {\r
+            names = new String[] {"time"};\r
+            return;\r
+        }\r
+        \r
+        Resource model = null;\r
+        try {\r
+            /* Find the model resource. It can be found with PartOf \r
+               relations from series resource in a chart */\r
+            model  = context.getSession().syncRequest(new Read<Resource>() {\r
+\r
+                @Override\r
+                public Resource perform(ReadGraph graph) throws DatabaseException {\r
+                    Resource r = resource;\r
+                    while((r = graph.getPossibleObject(r, Layer0.getInstance(graph).PartOf)) != null) {\r
+                        if(graph.isInstanceOf(r, SysdynResource.getInstance(graph).SysdynModel))\r
+                            return r;\r
+                    }\r
+                    return null;\r
+                }\r
+                \r
+            });\r
+            \r
+            if(model != null) {\r
+                // Find all variables and set them as the reference for isValid(String)\r
+                SimanticsUI.getSession().asyncRequest(\r
+                        new AllVariablesOfModel(model)\r
+                , new Listener<String[]>() {\r
+\r
+                    @Override\r
+                    public void execute(String[] result) {\r
+                        names = result;\r
+                    }\r
+\r
+                    @Override\r
+                    public void exception(Throwable t) {\r
+                        t.printStackTrace();\r
+                    }\r
+\r
+                    @Override\r
+                    public boolean isDisposed() {\r
+                        return text.isDisposed();\r
+                    }\r
+\r
+                }); \r
+            }\r
+        } catch (DatabaseException e) {\r
+            e.printStackTrace();\r
+        }\r
+    }\r
+\r
+}\r
index f4382101d9beee3c21b2a50ad59c58640614d0aa..c073516ce2e991d1296a17218f5c03bb11edb866 100644 (file)
  *******************************************************************************/\r
 package org.simantics.sysdyn.ui.trend.chart.properties;\r
 \r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.Collections;\r
-import java.util.List;\r
-\r
 import org.eclipse.jface.fieldassist.SimpleContentProposalProvider;\r
 import org.eclipse.swt.widgets.Control;\r
 import org.simantics.browsing.ui.swt.widgets.impl.Widget;\r
 import org.simantics.browsing.ui.swt.widgets.impl.WidgetSupport;\r
-import org.simantics.db.ReadGraph;\r
 import org.simantics.db.Resource;\r
-import org.simantics.db.common.request.ObjectsWithType;\r
-import org.simantics.db.common.utils.NameUtils;\r
-import org.simantics.db.exception.DatabaseException;\r
 import org.simantics.db.management.ISessionContext;\r
 import org.simantics.db.procedure.Listener;\r
-import org.simantics.db.request.Read;\r
-import org.simantics.layer0.Layer0;\r
-import org.simantics.simulation.ontology.SimulationResource;\r
-import org.simantics.structural.stubs.StructuralResource2;\r
-import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.ui.SimanticsUI;\r
 import org.simantics.ui.utils.AdaptionUtils;\r
-import org.simantics.utils.strings.AlphanumComparator;\r
 \r
 /**\r
  * Provides all variables a model contains\r
@@ -68,35 +53,9 @@ public class VariableProposalProvider extends SimpleContentProposalProvider impl
             return;\r
         this.resource = resource;\r
         \r
-        SimanticsUI.getSession().asyncRequest(new Read<String[]>() {\r
-\r
-            @Override\r
-            public String[] perform(ReadGraph graph) throws DatabaseException {\r
-                Layer0 l0 = Layer0.getInstance(graph);\r
-                SimulationResource simu = SimulationResource.getInstance(graph);\r
-                SysdynResource sr = SysdynResource.getInstance(graph);\r
-                \r
-                // Find the model of this resource\r
-                Resource model = resource;\r
-                while(model != null && !graph.isInstanceOf(model, sr.SysdynModel))\r
-                    model = graph.getPossibleObject(model, l0.PartOf);\r
-                \r
-                if(model == null)\r
-                    return new String[0];\r
-                \r
-                // Find the models configuration\r
-                Resource conf = graph.getSingleObject(model, simu.HasConfiguration);\r
-                List<String> items = new ArrayList<String>();\r
-                \r
-                // Recursively read all configurations and add items\r
-                ReadConfiguration(graph, conf, "", items);\r
-                \r
-                // Finally sort the results\r
-                Collections.sort(items, AlphanumComparator.CASE_INSENSITIVE_COMPARATOR);\r
-                return items.toArray(new String[items.size()]);\r
-            }\r
-\r
-        }, new Listener<String[]>() {\r
+        SimanticsUI.getSession().asyncRequest(\r
+                new AllVariablesOfModel(resource)\r
+        , new Listener<String[]>() {\r
 \r
             @Override\r
             public void execute(String[] result) {\r
@@ -119,39 +78,4 @@ public class VariableProposalProvider extends SimpleContentProposalProvider impl
         \r
     }\r
     \r
-    /**\r
-     * Read components in a configuration and recursively all module configurations\r
-     * \r
-     * @param graph ReadGraph\r
-     * @param configuration Resource to be read\r
-     * @param path Current path from base realization\r
-     * @param items Found variables\r
-     * @throws DatabaseException\r
-     */\r
-    private void ReadConfiguration(ReadGraph graph, Resource configuration, String path, Collection<String> items) throws DatabaseException {\r
-        SysdynResource sr = SysdynResource.getInstance(graph);\r
-        Layer0 l0 = Layer0.getInstance(graph);\r
-        StructuralResource2 sr2 = StructuralResource2.getInstance(graph);\r
-\r
-        String name;\r
-        for(Resource resource : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.IndependentVariable))) {\r
-            name = path + NameUtils.getSafeName(graph, resource);\r
-            items.add(name);\r
-        }\r
-        \r
-        for(Resource resource : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Input))) {\r
-            name = path + NameUtils.getSafeName(graph, resource);\r
-            items.add(name);\r
-        }\r
-\r
-        for(Resource module : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Module))) {\r
-            Resource instanceOf = graph.getPossibleObject(module, l0.InstanceOf);\r
-            Resource conf = graph.getPossibleObject(instanceOf, sr2.IsDefinedBy);\r
-            if(conf != null) {\r
-                String p = path + NameUtils.getSafeName(graph, module)  + ".";\r
-                ReadConfiguration(graph, conf, p, items);\r
-            }\r
-        }\r
-    }\r
-\r
 }\r
index c7597ac041a59e0dffc34735c0af548a7e223a65..da07fe55b4014bc9fa4138f44c170fd38a7f755d 100644 (file)
@@ -30,6 +30,7 @@ import org.simantics.sysdyn.ui.trend.chart.properties.JFreeChartPropertyColorPro
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIFactory;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIModifier;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.RangeComposite;\r
+import org.simantics.sysdyn.ui.trend.chart.properties.VariableExistsValidator;\r
 \r
 /**\r
  * Composite for modifying properties of a series in a bar chart\r
@@ -53,6 +54,7 @@ public class BarSeriesPropertyComposite extends Composite {
         variable = new TrackedText(this, support, SWT.BORDER);\r
         variable.setTextFactory(new RVIFactory());\r
         variable.addModifyListener(new RVIModifier(variable.getWidget(), support));\r
+        variable.setInputValidator(new VariableExistsValidator(support, variable));\r
         variable.setColorProvider(new JFreeChartPropertyColorProvider(this.variable.getResourceManager()));\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(this.variable.getWidget());\r
 \r
index dad20d4a1613f3decc94563c8c960ee8c81f113b..7ea26a41a046f51fcdcabb00a61a40bce6d91e00 100644 (file)
@@ -34,6 +34,7 @@ import org.simantics.sysdyn.ui.trend.chart.properties.JFreeChartPropertyColorPro
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIFactory;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIModifier;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.RangeComposite;\r
+import org.simantics.sysdyn.ui.trend.chart.properties.VariableExistsValidator;\r
 \r
 /**\r
  * Composite containing the properties of a series\r
@@ -57,6 +58,7 @@ public class PieSeriesPropertyComposite extends Composite {
         variable = new TrackedText(this, support, SWT.BORDER);\r
         variable.setTextFactory(new RVIFactory());\r
         variable.addModifyListener(new RVIModifier(variable.getWidget(), support));\r
+        variable.setInputValidator(new VariableExistsValidator(support, variable));\r
         variable.setColorProvider(new JFreeChartPropertyColorProvider(this.variable.getResourceManager()));\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(this.variable.getWidget());\r
 \r
index f0568510ba4143f26e3d125e44b397166ba2c66f..1dbe6d4c8833f2ef170faadc24e530fd8837cf5f 100644 (file)
@@ -40,6 +40,7 @@ import org.simantics.sysdyn.ui.trend.chart.properties.RVIFactory;
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIModifier;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.RangeComposite;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.TrackedSpinner;\r
+import org.simantics.sysdyn.ui.trend.chart.properties.VariableExistsValidator;\r
 import org.simantics.ui.utils.AdaptionUtils;\r
 \r
 /**\r
@@ -67,6 +68,7 @@ public class SeriesPropertyComposite extends Composite {
         variable.setTextFactory(new RVIFactory());\r
         variable.addModifyListener(new RVIModifier(variable.getWidget(), support));\r
         variable.setColorProvider(new JFreeChartPropertyColorProvider(this.variable.getResourceManager()));\r
+        variable.setInputValidator(new VariableExistsValidator(support, variable));\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(this.variable.getWidget());\r
 \r
         // Range\r
index 530d611a0ba2ce80926b7dc1b9e3f1b0624b81f3..3081abbbf105e84c742a5cdad89ed5fc74652de4 100644 (file)
@@ -11,6 +11,8 @@
  *******************************************************************************/\r
 package org.simantics.sysdyn.ui.trend.chart.properties.xyline;\r
 \r
+import java.util.List;\r
+\r
 import org.eclipse.jface.layout.GridDataFactory;\r
 import org.eclipse.jface.layout.GridLayoutFactory;\r
 import org.eclipse.jface.viewers.ISelectionProvider;\r
@@ -24,6 +26,7 @@ import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;\r
 import org.eclipse.swt.widgets.Tree;\r
 import org.eclipse.ui.IWorkbenchSite;\r
+import org.simantics.browsing.ui.NodeContext;\r
 import org.simantics.browsing.ui.swt.SingleSelectionInputSource;\r
 import org.simantics.browsing.ui.swt.widgets.Button;\r
 import org.simantics.browsing.ui.swt.widgets.GraphExplorerComposite;\r
@@ -206,10 +209,25 @@ public class XYLineAxisAndVariablesTab extends LabelPropertyTabContributor {
 \r
         @Override\r
         public void apply(WriteGraph graph, Resource input) throws DatabaseException {\r
-            if(input == null)\r
+            NodeContext nc = explorer.getExplorer().getRoot();\r
+            if(nc == null)\r
                 return;\r
+            \r
             JFreeChartResource jfree = JFreeChartResource.getInstance(graph);\r
             Layer0 l0 = Layer0.getInstance(graph);\r
+            \r
+            if(input == null) {\r
+                Resource chart = AdaptionUtils.adaptToSingle(nc, Resource.class);\r
+                if(chart == null) return;\r
+                Resource plot = graph.syncRequest(new PossibleObjectWithType(chart, l0.ConsistsOf, jfree.Plot));\r
+                if(plot == null) return;\r
+                Resource rangelist = graph.getPossibleObject(plot, jfree.Plot_rangeAxisList);\r
+                if(rangelist == null) return;\r
+                List<Resource> list = ListUtils.toList(graph, rangelist);\r
+                if(list == null || list.isEmpty()) return;\r
+                input = list.get(0);\r
+            }\r
+            \r
             Resource dataset;\r
             if(graph.isInstanceOf(input, jfree.Series)) {\r
                 // Selected resource is series. Add to same dataset\r
index c4e730da501d271ae1e0f3ad110257cdd497654d..9bba7fcc8d5d3086f7c98b96c564b434fa1e3b59 100644 (file)
@@ -58,6 +58,7 @@ import org.simantics.sysdyn.ui.trend.chart.properties.RVIFactory;
 import org.simantics.sysdyn.ui.trend.chart.properties.RVIModifier;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.TitleFactory;\r
 import org.simantics.sysdyn.ui.trend.chart.properties.TitleModifier;\r
+import org.simantics.sysdyn.ui.trend.chart.properties.VariableExistsValidator;\r
 import org.simantics.ui.utils.AdaptionUtils;\r
 \r
 /**\r
@@ -168,6 +169,7 @@ public class XYLineGeneralPropertiesTab extends LabelPropertyTabContributor impl
         xvariable.setTextFactory(new RVIFactory());\r
         xvariable.addModifyListener(new RVIModifier(xvariable.getWidget(), domainAxisSupport));\r
         xvariable.setColorProvider(new JFreeChartPropertyColorProvider(xvariable.getResourceManager()));\r
+        xvariable.setInputValidator(new VariableExistsValidator(support, xvariable, true));\r
         GridDataFactory.fillDefaults().grab(true, false).applyTo(xvariable.getWidget());\r
         \r
         Composite axisHide = new AxisHidePropertyComposite(xgroup, context, domainAxisSupport, SWT.NONE);\r
index 6abe38f235d0ad2a7fecb72c88e54708aa6bb562..d0acb0858a746611b97def40d6e8db92ba4454b1 100644 (file)
@@ -53,409 +53,411 @@ import org.simantics.ui.SimanticsUI;
 \r
 public class ExpressionUtils {\r
 \r
-       /**\r
-        * Determines if the given expression is a parameter expression. Parameters are numbers.\r
-        * If the expression contains anything other than numbers, it is not a parameter.\r
-        \r
-        * @param expression The expression to be checked\r
-        * @return is the expression a parameter\r
-        */\r
-       static public boolean isParameter(String expression) {\r
-               try {\r
-                       /*\r
+    /**\r
+     * Determines if the given expression is a parameter expression. Parameters are numbers.\r
+     * If the expression contains anything other than numbers, it is not a parameter.\r
+     * \r
+     * @param expression The expression to be checked\r
+     * @return is the expression a parameter\r
+     */\r
+    static public boolean isParameter(String expression) {\r
+        try {\r
+            /*\r
                        StringTokenizer st = new StringTokenizer(expression, "{}[],;");\r
                        while(st.hasMoreTokens()) {\r
                                Double.parseDouble(st.nextToken().trim());\r
                        }\r
-                        */\r
-                       Double.parseDouble(expression.trim());\r
-                       return true;\r
-               } catch (NumberFormatException e) {\r
-                       return false;\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Validates the expressionfield of a given IExpression\r
-        \r
-        * @param expression The expression whose fields are validated\r
-        * @param connectedVariables Table items from the shortcut widget. (Items needed so that they can be coloured)\r
-        * @param configuration configuration where the variable is located\r
-        */\r
-       static public void validateExpressionFields(final Resource variable, IExpression expression, Table variableTable) {\r
-\r
-               Resource configuration = null;\r
-               try {\r
-                       configuration = SimanticsUI.getSession().syncRequest(new Read<Resource>() {\r
-\r
-                               @Override\r
-                               public Resource perform(ReadGraph graph) throws DatabaseException {\r
-                                       SysdynResource sr = SysdynResource.getInstance(graph);\r
-                                       Resource configuration = variable;\r
-                                       while (configuration != null) {\r
-                                               configuration = graph.getPossibleObject(configuration, Layer0.getInstance(graph).PartOf);\r
-\r
-                                               if(configuration == null || graph.isInstanceOf(configuration, sr.Configuration)) {\r
-                                                       break;\r
-                                               }\r
-                                       }\r
-                                       return configuration;\r
-                               }\r
-                       });\r
-               } catch (DatabaseException e) {\r
-                       e.printStackTrace();\r
-                       return;\r
-               }\r
-\r
-               if(configuration == null)\r
-                       return;\r
-\r
-               ExpressionParser parser = new ExpressionParser(new StringReader(""));\r
-               Set<String> variables = new HashSet<String>();\r
-               HashMap<ExpressionField, HashMap<String, List<Token>>> references = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
-               final HashMap<ExpressionField, HashMap<String, List<List<Token>>>> ranges = new HashMap<ExpressionField, HashMap<String, List<List<Token>>>>();\r
-               HashMap<ExpressionField, HashMap<Token, List<Token>>> forIndices = new HashMap<ExpressionField, HashMap<Token, List<Token>>>();\r
-               HashMap<ExpressionField, HashMap<String, List<Token>>> enumerationReferences = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
-               HashMap<ExpressionField, HashMap<String, List<Token>>> functionReferences = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
-               \r
-               // Build references and variable array\r
-               for(ExpressionField ef : expression.getExpressionFields()) {\r
-                       ef.resetAnnotations();\r
-                       String textString = ef.getExpression();\r
-                       parser.ReInit(new StringReader(textString));\r
-                       try {\r
-                               parser.expr();\r
-                               HashMap<String, List<Token>> refs = parser.getReferences();\r
-                               references.put(ef, refs);\r
-                               variables.addAll(refs.keySet());\r
-\r
-                               ranges.put(ef, parser.getRanges());\r
-                               \r
-                               forIndices.put(ef,  parser.getForIndices());\r
-                               \r
-                               enumerationReferences.put(ef, parser.getEnumerationReferences());\r
-                               \r
+             */\r
+            Double.parseDouble(expression.trim());\r
+            return true;\r
+        } catch (NumberFormatException e) {\r
+            return false;\r
+        }\r
+    }\r
+\r
+    /**\r
+     * Validates the expressionfield of a given IExpression\r
+     * \r
+     * @param expression The expression whose fields are validated\r
+     * @param connectedVariables Table items from the shortcut widget. (Items needed so that they can be coloured)\r
+     * @param configuration configuration where the variable is located\r
+     */\r
+    static public void validateExpressionFields(final Resource variable, IExpression expression, Table variableTable) {\r
+\r
+        Resource configuration = null;\r
+        try {\r
+            configuration = SimanticsUI.getSession().syncRequest(new Read<Resource>() {\r
+\r
+                @Override\r
+                public Resource perform(ReadGraph graph) throws DatabaseException {\r
+                    SysdynResource sr = SysdynResource.getInstance(graph);\r
+                    Resource configuration = variable;\r
+                    while (configuration != null) {\r
+                        configuration = graph.getPossibleObject(configuration, Layer0.getInstance(graph).PartOf);\r
+\r
+                        if(configuration == null || graph.isInstanceOf(configuration, sr.Configuration)) {\r
+                            break;\r
+                        }\r
+                    }\r
+                    return configuration;\r
+                }\r
+            });\r
+        } catch (DatabaseException e) {\r
+            e.printStackTrace();\r
+            return;\r
+        }\r
+\r
+        if(configuration == null)\r
+            return;\r
+\r
+        ExpressionParser parser = new ExpressionParser(new StringReader(""));\r
+        Set<String> variables = new HashSet<String>();\r
+        HashMap<ExpressionField, HashMap<String, List<Token>>> references = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
+        final HashMap<ExpressionField, HashMap<String, List<List<Token>>>> ranges = new HashMap<ExpressionField, HashMap<String, List<List<Token>>>>();\r
+        HashMap<ExpressionField, HashMap<Token, List<Token>>> forIndices = new HashMap<ExpressionField, HashMap<Token, List<Token>>>();\r
+        HashMap<ExpressionField, HashMap<String, List<Token>>> enumerationReferences = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
+        HashMap<ExpressionField, HashMap<String, List<Token>>> functionReferences = new HashMap<ExpressionField, HashMap<String, List<Token>>>();\r
+\r
+        // Build references and variable array\r
+        for(ExpressionField ef : expression.getExpressionFields()) {\r
+            ef.resetAnnotations();\r
+            String textString = ef.getExpression();\r
+            parser.ReInit(new StringReader(textString));\r
+            try {\r
+                parser.expr();\r
+                HashMap<String, List<Token>> refs = parser.getReferences();\r
+                references.put(ef, refs);\r
+                variables.addAll(refs.keySet());\r
+\r
+                ranges.put(ef, parser.getRanges());\r
+\r
+                forIndices.put(ef,  parser.getForIndices());\r
+\r
+                enumerationReferences.put(ef, parser.getEnumerationReferences());\r
+\r
                 functionReferences.put(ef, parser.getFunctionCallReferences());\r
-                               \r
-                       } catch (ParseException e1) {\r
-                               ef.setSyntaxError(e1.currentToken, "Syntax Error");\r
-                       } catch (TokenMgrError err) {\r
-                               ef.setSyntaxError(0, textString.length(), ExpressionField.SYNTAX_ERROR, "Expression contains unsupported characters");\r
-                       }\r
-               }\r
+\r
+            } catch (ParseException e1) {\r
+                ef.setSyntaxError(e1.currentToken, "Syntax Error");\r
+            } catch (TokenMgrError err) {\r
+                ef.setSyntaxError(0, textString.length(), ExpressionField.SYNTAX_ERROR, "Expression contains unsupported characters");\r
+            }\r
+        }\r
 \r
 \r
-               final HashMap<String, Variable> modelVariables = new HashMap<String, Variable>();\r
+        final HashMap<String, Variable> modelVariables = new HashMap<String, Variable>();\r
         HashSet<String> ignoreVariables = new HashSet<String>();\r
 \r
-               if(!variables.isEmpty() || !functionReferences.isEmpty()) {\r
-                       Set<String> noSuchVariables = new HashSet<String>();\r
-                       SysdynModelManager sdm = SysdynModelManager.getInstance(SimanticsUI.getSession());\r
-                       SysdynModel model = sdm.getModel(configuration);\r
-                       try {\r
-                               model.update();\r
-                       } catch (DatabaseException e1) {\r
-                               e1.printStackTrace();\r
-                       }\r
+        if(!variables.isEmpty() || !functionReferences.isEmpty()) {\r
+            Set<String> noSuchVariables = new HashSet<String>();\r
+            SysdynModelManager sdm = SysdynModelManager.getInstance(SimanticsUI.getSession());\r
+            SysdynModel model = sdm.getModel(configuration);\r
+            try {\r
+                model.update();\r
+            } catch (DatabaseException e1) {\r
+                e1.printStackTrace();\r
+            }\r
 \r
-                       Configuration conf = model.getConfiguration();\r
-                       ArrayList<IElement> elements = conf.getElements();\r
-                       for(IElement e : elements) {\r
-                               if(e instanceof Variable) {\r
-                                       Variable v = (Variable) e;\r
-                                       modelVariables.put(v.getName(), v);\r
-                               } else if(e instanceof Module) {\r
-                                   ignoreVariables.add(((Module)e).getName());\r
-                               }\r
-                       }\r
+            Configuration conf = model.getConfiguration();\r
+            ArrayList<IElement> elements = conf.getElements();\r
+            for(IElement e : elements) {\r
+                if(e instanceof Variable) {\r
+                    Variable v = (Variable) e;\r
+                    modelVariables.put(v.getName(), v);\r
+                } else if(e instanceof Module) {\r
+                    ignoreVariables.add(((Module)e).getName());\r
+                }\r
+            }\r
 \r
-                       // VARIABLE NAMES\r
-                       \r
-                       if(variables.contains("time"))\r
-                               variables.remove("time");\r
-                       \r
-                       // Examine sheets\r
-                       for(ExpressionField ef : functionReferences.keySet()) {\r
-                           for(String key : functionReferences.get(ef).keySet()) {\r
-                        String[] parts = key.split("\\.");\r
-                        Object current = conf;\r
-                        for(int i = 0; i < parts.length && current != null; i++) {\r
-                            current = getElement(current, parts[i]);\r
-                        }\r
-                        if(current != null && current instanceof Sheet) {\r
-                            Sheet sheet = (Sheet) current;\r
-                            String e = ef.getExpression();\r
-                            int start = 0, end = 0, call = 0;\r
-                            String cellOrRange = null;\r
-                            while((call = e.indexOf(key, end)) >= 0) {\r
-                                start = e.indexOf("(", call) +1;\r
-                                end = e.indexOf(")", start);\r
-                                if(start < 0 || end < 0 || end < start) {\r
-                                    break;\r
-                                }\r
-                                Pattern p = Pattern.compile("[-\\+\\*\\/\\(\\)\\{\\}\\[\\],\\.\\t\\n\\r\\f]");\r
-                                cellOrRange = e.substring(start, end);\r
-                                Matcher m = p.matcher(cellOrRange);\r
-                                if (m.find() || cellOrRange.split(":").length > 2) {\r
-                                    ef.setSyntaxError(start, end - start, ExpressionField.SYNTAX_ERROR, "Not a valid cell or range");\r
-                                }\r
-                            }\r
-                            \r
-                         List<Token> tokens = functionReferences.get(ef).get(key);\r
-                         for(Token cell : tokens) {\r
-                             List<Token> refs = references.get(ef).get(cell.image);\r
-                             if(refs != null)\r
-                                 refs.remove(cell);\r
-                             if(!sheet.getCells().containsKey(cell.image))\r
-                                 ef.setSyntaxError(cell.image, "Invalid cell", cell.beginLine, cell.beginColumn, cell.endLine, cell.endColumn); \r
-                         }\r
-\r
-                        }\r
-                           }\r
-                       }\r
+            // VARIABLE NAMES\r
 \r
-                       for(String v : variables) {\r
-\r
-                           if(modelVariables.get(v) instanceof Enumeration || modelVariables.get(v) instanceof Sheet) {\r
-                               ignoreVariables.add(v);\r
-                           }\r
-\r
-                           // Reference to some other module, spreadsheet or enumeration\r
-                           if(v.contains(".")) {\r
-                               String[] parts = v.split("\\.");\r
-                               Object parent = conf;\r
-                               for(int i = 0; i < parts.length && parent != null; i++) {\r
-                                   parent = getElement(parent, parts[i]);\r
-                               }\r
-                               if(parent == null) {\r
-                                   noSuchVariables.add(v);\r
-                               } else {\r
-                                   ignoreVariables.add(v);\r
-                               }\r
-                           } else if(!modelVariables.keySet().contains(v)) {\r
-                                       noSuchVariables.add(v);\r
-                               }\r
-                       }\r
+            if(variables.contains("time"))\r
+                variables.remove("time");\r
 \r
-                       if(!noSuchVariables.isEmpty()) {\r
-                           noSuchVariables.removeAll(ignoreVariables);\r
-                               // remove no such variables from variable list\r
-                               for(String s : noSuchVariables)\r
-                                       variables.remove(s);\r
-                               // create annotations\r
-                               HashMap<ExpressionField ,ArrayList<Position>> positions = getPositionsForVariables(references, noSuchVariables);\r
-                               for(ExpressionField ef : positions.keySet()) {\r
-                                       ef.setNoSuchVariableAnnotations(positions.get(ef));\r
-                               }\r
-                       }      \r
-               }\r
-\r
-               // Check that the variables that exist have connections and the connected variables have references in the expressions\r
-               if(!(expression instanceof StockExpression)) { \r
-                       \r
-                       if(variableTable != null && !variableTable.isDisposed()) {\r
-                               TableItem[] connectedVariables = variableTable.getItems();\r
-                               for(TableItem ti : connectedVariables) {\r
-                                       if(!variables.contains(ti.getText())) {\r
-                                               ti.setForeground(new Color(ti.getDisplay(), 255,125,0));\r
-                                       } else {\r
-                                               ti.setForeground(new Color(ti.getDisplay(), 0, 0, 0));\r
-                                               variables.remove(ti.getText());\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       // Remove all enumerations and sheets, they cannot have connections\r
-                       variables.removeAll(ignoreVariables);\r
+            // Examine sheets\r
+            for(ExpressionField ef : functionReferences.keySet()) {\r
+                for(String key : functionReferences.get(ef).keySet()) {\r
+                    String[] parts = key.split("\\.");\r
+                    Object current = conf;\r
+                    for(int i = 0; i < parts.length && current != null; i++) {\r
+                        current = getElement(current, parts[i]);\r
+                    }\r
+                    if(current != null && current instanceof Sheet) {\r
+                        Sheet sheet = (Sheet) current;\r
+                        String e = ef.getExpression();\r
+                        int start = 0, end = 0, call = 0;\r
+                        String cellOrRange = null;\r
+                        while((call = e.indexOf(key, end)) >= 0) {\r
+                            start = e.indexOf("(", call) +1;\r
+                            end = e.indexOf(")", start);\r
+                            if(start < 0 || end < 0 || end < start) {\r
+                                break;\r
+                            }\r
+                            Pattern p = Pattern.compile("[-\\+\\*\\/\\(\\)\\{\\}\\[\\],\\.\\t\\n\\r\\f]");\r
+                            cellOrRange = e.substring(start, end);\r
+                            Matcher m = p.matcher(cellOrRange);\r
+                            if (m.find() || cellOrRange.split(":").length > 2) {\r
+                                ef.setSyntaxError(start, end - start, ExpressionField.SYNTAX_ERROR, "Not a valid cell or range");\r
+                            }\r
+                        }\r
 \r
-                       if(!variables.isEmpty()) {\r
-                               HashMap<ExpressionField ,ArrayList<Position>> positions = getPositionsForVariables(references, variables);\r
-                               for(ExpressionField ef : positions.keySet()) {\r
-                                       ef.setMissingLinkAnnotations(positions.get(ef));\r
-                               }\r
+                        List<Token> tokens = functionReferences.get(ef).get(key);\r
+                        for(Token cell : tokens) {\r
+                            List<Token> refs = references.get(ef).get(cell.image);\r
+                            if(refs != null)\r
+                                refs.remove(cell);\r
+                            if(!sheet.getCells().containsKey(cell.image))\r
+                                ef.setSyntaxError(cell.image, "Invalid cell", cell.beginLine, cell.beginColumn, cell.endLine, cell.endColumn); \r
+                        }\r
 \r
-                       }\r
-               } \r
-\r
-\r
-\r
-               HashMap<ExpressionField, HashMap<Token, String>> errors = new HashMap<ExpressionField, HashMap<Token, String>>();\r
-               HashMap<Token, String> result = null;\r
-\r
-               for(final ExpressionField ef : ranges.keySet()) {\r
-                       \r
-                       // RANGES\r
-                       try {\r
-                               result = SimanticsUI.getSession().syncRequest(new Read<HashMap<Token, String>>() {\r
-\r
-                                       @Override\r
-                                       public HashMap<Token, String> perform(ReadGraph graph) throws DatabaseException {\r
-                                               HashMap<Token, String> result = new HashMap<Token, String>();\r
-                                               for(String s : ranges.get(ef).keySet()) {\r
-                                                       if(ranges.get(ef).containsKey(s)) {\r
-                                                               for(List<Token> l : ranges.get(ef).get(s)) {\r
-                                                                       String[] ss = new String[l.size()];\r
-                                                                       for(int i = 0; i < l.size(); i++) {\r
-                                                                               ss[i] = l.get(i).image;\r
-                                                                       }\r
-                                                                       Map<Integer, String> invalidRanges = ArrayVariableUtils.isRangeValid(graph, modelVariables.get(s), ss);\r
-                                                                       if(invalidRanges != null && !invalidRanges.isEmpty()) {\r
-                                                                               for(Integer i : invalidRanges.keySet()) {\r
-                                                                                       result.put(l.get(i), invalidRanges.get(i));\r
-                                                                               }\r
-                                                                       }\r
-                                                               }\r
-                                                       }\r
-                                               }       \r
-                                               return result;\r
-                                       }\r
-                               });\r
-                       } catch (DatabaseException e) {\r
-                               e.printStackTrace();\r
-                       }\r
-                       \r
-                       // FOR-INDICES\r
-                       \r
-                       HashMap<Token, List<Token>> indexList = forIndices.get(ef);\r
-                       for(Token t : indexList.keySet()) {\r
-                               boolean isFound = false;\r
-                               for(Token rt : indexList.get(t)) {\r
-                                       if(rt.image.equals(t.image)) {\r
-                                               isFound = true;\r
-                                               // remove range token from invalid ranges\r
-                                               result.remove(rt);\r
-                                               break;\r
-                                       }\r
-                               }\r
-                               if(!isFound) {\r
-                                       result.put(t, "Invalid index");\r
-                               }\r
-                       }\r
-                       \r
-                       // ENUMERATION REFERENCES IN FOR-LOOPS\r
-                       HashMap<String, List<Token>> enumRefList = enumerationReferences.get(ef);\r
-                       for(String enumeration : enumRefList.keySet()) {\r
-                               for(Token et : enumRefList.get(enumeration)) {\r
-                                       Variable v = modelVariables.get(enumeration);\r
-                                       if(v != null && v instanceof Enumeration) {\r
-                                               boolean isFound = false;\r
-                                               Enumeration e = (Enumeration)v;\r
-                                               \r
-                                               if(enumeration.equals(et.image) ||\r
-                                                               "size".equals(et.image) || \r
-                                                               "elements".equals(et.image)){\r
-                                                       // The full enumeration\r
-                                                       isFound = true;\r
-                                               } else {\r
-                                                       for(EnumerationIndex ei : e.getEnumerationIndexes()) {\r
-                                                               if(ei.getName().equals(et.image)) {\r
-                                                                       isFound = true;\r
-                                                                       break;\r
-                                                               }\r
-                                                       }\r
-                                               }\r
-                                               \r
-                                               if(!isFound) {\r
-                                                       StringBuilder sb = new StringBuilder();\r
-                                                       sb.append("Enumeration ");\r
-                                                       sb.append(enumeration);\r
-                                                       sb.append(" has no such index.\nAvailable indexes are: ");\r
-                                                       Iterator<EnumerationIndex> iterator = e.getEnumerationIndexes().iterator();\r
-                                                       while(iterator.hasNext()) {\r
-                                                               sb.append(iterator.next().getName());\r
-                                                               if(iterator.hasNext()) \r
-                                                                       sb.append(", ");\r
-                                                       }\r
-                                                       result.put(et, sb.toString());\r
-                                               }\r
-                                               \r
-                                               \r
-                                       } else {\r
-                                               result.put(et, "No such enumeration (" + enumeration + ")");\r
-                                       }\r
-                               }\r
-                       }\r
-                       \r
-                       errors.put(ef, result);\r
-\r
-                       \r
-               }                                       \r
-               \r
-               for(ExpressionField ef : ranges.keySet()) {\r
-                       HashMap<Token, String> tokens = errors.get(ef);\r
-                       if(tokens == null || tokens.isEmpty()) continue;\r
-                       for(Token t : tokens.keySet()) {\r
-                               ef.setSyntaxError(t, tokens.get(t));\r
-                       }\r
-               }\r
-               \r
-       }\r
-       \r
-       static private Object getElement(Object parent, String name) {\r
-           Configuration c = null;\r
-           if(parent instanceof Module) {\r
+                    }\r
+                }\r
+            }\r
+\r
+            for(String v : variables) {\r
+\r
+                if(modelVariables.get(v) instanceof Enumeration || modelVariables.get(v) instanceof Sheet) {\r
+                    ignoreVariables.add(v);\r
+                }\r
+\r
+                // Reference to some other module, spreadsheet or enumeration\r
+                if(v.contains(".")) {\r
+                    String[] parts = v.split("\\.");\r
+                    Object parent = conf;\r
+                    for(int i = 0; i < parts.length && parent != null; i++) {\r
+                        parent = getElement(parent, parts[i]);\r
+                    }\r
+                    if(parent == null) {\r
+                        noSuchVariables.add(v);\r
+                    } else {\r
+                        ignoreVariables.add(v);\r
+                    }\r
+                } else if(!modelVariables.keySet().contains(v)) {\r
+                    noSuchVariables.add(v);\r
+                }\r
+            }\r
+\r
+            if(!noSuchVariables.isEmpty()) {\r
+                noSuchVariables.removeAll(ignoreVariables);\r
+                // remove no such variables from variable list\r
+                for(String s : noSuchVariables)\r
+                    variables.remove(s);\r
+                // create annotations\r
+                HashMap<ExpressionField ,ArrayList<Position>> positions = getPositionsForVariables(references, noSuchVariables);\r
+                for(ExpressionField ef : positions.keySet()) {\r
+                    ef.setNoSuchVariableAnnotations(positions.get(ef));\r
+                }\r
+            }      \r
+        }\r
+\r
+        // Check that the variables that exist have connections and the connected variables have references in the expressions\r
+        if(!(expression instanceof StockExpression)) { \r
+\r
+            if(variableTable != null && !variableTable.isDisposed()) {\r
+                TableItem[] connectedVariables = variableTable.getItems();\r
+                for(TableItem ti : connectedVariables) {\r
+                    if(!variables.contains(ti.getText())) {\r
+                        ti.setForeground(new Color(ti.getDisplay(), 255,125,0));\r
+                    } else {\r
+                        ti.setForeground(new Color(ti.getDisplay(), 0, 0, 0));\r
+                        variables.remove(ti.getText());\r
+                    }\r
+                }\r
+            }\r
+\r
+            // Remove all enumerations and sheets, they cannot have connections\r
+            variables.removeAll(ignoreVariables);\r
+\r
+            if(!variables.isEmpty()) {\r
+                HashMap<ExpressionField ,ArrayList<Position>> positions = getPositionsForVariables(references, variables);\r
+                for(ExpressionField ef : positions.keySet()) {\r
+                    ef.setMissingLinkAnnotations(positions.get(ef));\r
+                }\r
+\r
+            }\r
+        } \r
+\r
+\r
+\r
+        HashMap<ExpressionField, HashMap<Token, String>> errors = new HashMap<ExpressionField, HashMap<Token, String>>();\r
+        HashMap<Token, String> result = null;\r
+\r
+        for(final ExpressionField ef : ranges.keySet()) {\r
+\r
+            // RANGES\r
+            try {\r
+                result = SimanticsUI.getSession().syncRequest(new Read<HashMap<Token, String>>() {\r
+\r
+                    @Override\r
+                    public HashMap<Token, String> perform(ReadGraph graph) throws DatabaseException {\r
+                        HashMap<Token, String> result = new HashMap<Token, String>();\r
+                        for(String s : ranges.get(ef).keySet()) {\r
+                            if(ranges.get(ef).containsKey(s)) {\r
+                                for(List<Token> l : ranges.get(ef).get(s)) {\r
+                                    String[] ss = new String[l.size()];\r
+                                    for(int i = 0; i < l.size(); i++) {\r
+                                        ss[i] = l.get(i).image;\r
+                                    }\r
+                                    Map<Integer, String> invalidRanges = ArrayVariableUtils.isRangeValid(graph, modelVariables.get(s), ss);\r
+                                    if(invalidRanges != null && !invalidRanges.isEmpty()) {\r
+                                        for(Integer i : invalidRanges.keySet()) {\r
+                                            result.put(l.get(i), invalidRanges.get(i));\r
+                                        }\r
+                                    }\r
+                                }\r
+                            }\r
+                        }      \r
+                        return result;\r
+                    }\r
+                });\r
+            } catch (DatabaseException e) {\r
+                e.printStackTrace();\r
+            }\r
+\r
+            // FOR-INDICES\r
+\r
+            HashMap<Token, List<Token>> indexList = forIndices.get(ef);\r
+            for(Token t : indexList.keySet()) {\r
+                boolean isFound = false;\r
+                if(indexList.get(t) != null) {\r
+                    for(Token rt : indexList.get(t)) {\r
+                        if(rt.image.equals(t.image)) {\r
+                            isFound = true;\r
+                            // remove range token from invalid ranges\r
+                            result.remove(rt);\r
+                            break;\r
+                        }\r
+                    }\r
+                }\r
+                if(!isFound) {\r
+                    result.put(t, "Invalid index");\r
+                }\r
+            }\r
+\r
+            // ENUMERATION REFERENCES IN FOR-LOOPS\r
+            HashMap<String, List<Token>> enumRefList = enumerationReferences.get(ef);\r
+            for(String enumeration : enumRefList.keySet()) {\r
+                for(Token et : enumRefList.get(enumeration)) {\r
+                    Variable v = modelVariables.get(enumeration);\r
+                    if(v != null && v instanceof Enumeration) {\r
+                        boolean isFound = false;\r
+                        Enumeration e = (Enumeration)v;\r
+\r
+                        if(enumeration.equals(et.image) ||\r
+                                "size".equals(et.image) || \r
+                                "elements".equals(et.image)){\r
+                            // The full enumeration\r
+                            isFound = true;\r
+                        } else {\r
+                            for(EnumerationIndex ei : e.getEnumerationIndexes()) {\r
+                                if(ei.getName().equals(et.image)) {\r
+                                    isFound = true;\r
+                                    break;\r
+                                }\r
+                            }\r
+                        }\r
+\r
+                        if(!isFound) {\r
+                            StringBuilder sb = new StringBuilder();\r
+                            sb.append("Enumeration ");\r
+                            sb.append(enumeration);\r
+                            sb.append(" has no such index.\nAvailable indexes are: ");\r
+                            Iterator<EnumerationIndex> iterator = e.getEnumerationIndexes().iterator();\r
+                            while(iterator.hasNext()) {\r
+                                sb.append(iterator.next().getName());\r
+                                if(iterator.hasNext()) \r
+                                    sb.append(", ");\r
+                            }\r
+                            result.put(et, sb.toString());\r
+                        }\r
+\r
+\r
+                    } else {\r
+                        result.put(et, "No such enumeration (" + enumeration + ")");\r
+                    }\r
+                }\r
+            }\r
+\r
+            errors.put(ef, result);\r
+\r
+\r
+        }                                      \r
+\r
+        for(ExpressionField ef : ranges.keySet()) {\r
+            HashMap<Token, String> tokens = errors.get(ef);\r
+            if(tokens == null || tokens.isEmpty()) continue;\r
+            for(Token t : tokens.keySet()) {\r
+                ef.setSyntaxError(t, tokens.get(t));\r
+            }\r
+        }\r
+\r
+    }\r
+\r
+    static private Object getElement(Object parent, String name) {\r
+        Configuration c = null;\r
+        if(parent instanceof Module) {\r
             Module m = (Module)parent;\r
             c = m.getType().getConfiguration();\r
-           } else if (parent instanceof Configuration) {\r
-               c = (Configuration)parent;\r
-           }\r
-           \r
-           if(c != null) {\r
-               for(IElement e : c.getElements()) {\r
-                   if(e instanceof Variable && ((Variable)e).getName().equals(name)) {\r
-                       return e;\r
-                   } else if(e instanceof Module && ((Module)e).getName().equals(name)) {\r
+        } else if (parent instanceof Configuration) {\r
+            c = (Configuration)parent;\r
+        }\r
+\r
+        if(c != null) {\r
+            for(IElement e : c.getElements()) {\r
+                if(e instanceof Variable && ((Variable)e).getName().equals(name)) {\r
+                    return e;\r
+                } else if(e instanceof Module && ((Module)e).getName().equals(name)) {\r
                     return e;\r
-                   }\r
-               }\r
-           } else if(parent instanceof Sheet) {\r
+                }\r
+            }\r
+        } else if(parent instanceof Sheet) {\r
             Sheet s = (Sheet)parent;\r
             for(String key : s.getCells().keySet()) {\r
                 if(key.equals(name)) {\r
                     return Boolean.TRUE;\r
                 }\r
             }\r
-            \r
+\r
         } else if(parent instanceof Enumeration) {\r
             Enumeration e = (Enumeration)parent;\r
             if(name.equals("size") || name.equals("elements"))\r
                 return Boolean.TRUE;\r
-            \r
+\r
             for(EnumerationIndex ei : e.getEnumerationIndexes()) {\r
                 if(ei.getName().equals(name)) {\r
                     return Boolean.TRUE;\r
                 }\r
             }\r
-                \r
+\r
         }\r
-           \r
-           return null;\r
-       }\r
-\r
-       @SuppressWarnings("unchecked")\r
-       static private HashMap<ExpressionField ,ArrayList<Position>> getPositionsForVariables(HashMap<ExpressionField, HashMap<String, List<Token>>> references, Set<String> variables) {\r
-               HashMap<ExpressionField ,ArrayList<Position>> result = new HashMap<ExpressionField ,ArrayList<Position>>();\r
-               for(String s : variables) {\r
-                       List<Token> tlist = new ArrayList<Token>();\r
-                       for(ExpressionField ef : references.keySet()) {\r
-                               ArrayList<Position> positions = new ArrayList<Position>();\r
-                               tlist = references.get(ef).get(s);\r
-                               if(tlist != null)\r
-                                       for(Token t : tlist) {\r
-                                               StyledText st = ef.getSourceViewer().getTextWidget();\r
-                                               int start =  st.getOffsetAtLine(t.beginLine - 1) + t.beginColumn - 1;\r
-                                               int offset = st.getOffsetAtLine(t.endLine - 1) + t.endColumn - start;\r
-                                               positions.add(new Position(\r
-                                                               start,\r
-                                                               offset));\r
-                                       }\r
-                               if(result.keySet().contains(ef)) {\r
-                                       result.get(ef).addAll((ArrayList<Position>)positions.clone());\r
-                               } else {\r
-                                       result.put(ef, (ArrayList<Position>)positions.clone());\r
-                               }\r
-                       }\r
-               }\r
-               return result;\r
-       }\r
+\r
+        return null;\r
+    }\r
+\r
+    @SuppressWarnings("unchecked")\r
+    static private HashMap<ExpressionField ,ArrayList<Position>> getPositionsForVariables(HashMap<ExpressionField, HashMap<String, List<Token>>> references, Set<String> variables) {\r
+        HashMap<ExpressionField ,ArrayList<Position>> result = new HashMap<ExpressionField ,ArrayList<Position>>();\r
+        for(String s : variables) {\r
+            List<Token> tlist = new ArrayList<Token>();\r
+            for(ExpressionField ef : references.keySet()) {\r
+                ArrayList<Position> positions = new ArrayList<Position>();\r
+                tlist = references.get(ef).get(s);\r
+                if(tlist != null)\r
+                    for(Token t : tlist) {\r
+                        StyledText st = ef.getSourceViewer().getTextWidget();\r
+                        int start =  st.getOffsetAtLine(t.beginLine - 1) + t.beginColumn - 1;\r
+                        int offset = st.getOffsetAtLine(t.endLine - 1) + t.endColumn - start;\r
+                        positions.add(new Position(\r
+                                start,\r
+                                offset));\r
+                    }\r
+                if(result.keySet().contains(ef)) {\r
+                    result.get(ef).addAll((ArrayList<Position>)positions.clone());\r
+                } else {\r
+                    result.put(ef, (ArrayList<Position>)positions.clone());\r
+                }\r
+            }\r
+        }\r
+        return result;\r
+    }\r
 }\r
index 422f9e9ae42c85bde6857a8f0c2725fdaf787dad..9cec3f2b3d4442d0beb5ed9290d017ea86a1729c 100644 (file)
@@ -49,18 +49,21 @@ public class VariableNameUtils {
                 * How this works when range used in equations has the same string as\r
                 * the renamed variable? Should it be possible? \r
                 */ \r
+           if(originalName.equals(newName))\r
+               return; // Do nothing\r
+           \r
                Layer0 l0 = Layer0.getInstance(graph);\r
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                Resource configuration = graph.getSingleObject(variable, l0.PartOf);\r
                for(Resource r : graph.getObjects(configuration, l0.ConsistsOf)) {\r
                        if(graph.isInstanceOf(r, sr.IndependentVariable)) {\r
-                               Resource expressions = graph.getPossibleObject(r, sr.HasExpressions);\r
+                               Resource expressions = graph.getPossibleObject(r, sr.Variable_expressions);\r
                                if(expressions == null) continue;\r
                                List<Resource> expressionList = OrderedSetUtils.toList(graph, expressions);\r
                                for(Resource s : expressionList) {\r
                                        for(Resource p : graph.getPredicates(s)) {\r
                                                Resource o = graph.getPossibleObject(s, p);\r
-                                               if(o != null && graph.isInstanceOf(o, l0.String) && !p.equals(sr.HasArrayRange)) {\r
+                                               if(o != null && graph.isInstanceOf(o, l0.String) && !p.equals(sr.Expression_arrayRange)) {\r
                                                        String string = graph.getRelatedValue(s, p);\r
                                                        String replaced  = replaceAllWords(string, originalName, newName);\r
                                                        graph.claimLiteral(s, p, replaced);\r
index dbad2a45667f3a4b49569bca01f96f45d474f5af..88dbac818b6849a58270c5ff3fe5a9dfc231ebde 100644 (file)
@@ -57,13 +57,9 @@ public class DependencyFunction {
 \r
         if (!graph.hasStatement(component) || !graph.hasStatement(component, l0.PartOf))\r
             return Collections.emptyList();\r
-\r
-        // Find all variables that are linked to component with arrows\r
-        Set<String> dependencies = ValidationUtils.getDependencies(graph, component);\r
-        Set<String> references = null;\r
-\r
+        \r
         ArrayList<Issue> result = new ArrayList<Issue>();\r
-\r
+        Set<String> references = null;\r
         \r
         // Find all references in equations of component\r
         try {\r
@@ -72,6 +68,9 @@ public class DependencyFunction {
             return result;\r
         } \r
 \r
+        // Find all variables that are linked to component with arrows\r
+        Set<String> dependencies = ValidationUtils.getDependencies(graph, component);\r
+\r
         // Check that all arrow dependencies are used in equations\r
         if (dependencies != null) {\r
             for (String dependency : dependencies) {\r
index 5ad0123ab3fe04ddff2c01666290bc1bfef0be46..3826bbc9e21bcc8159fbaa6eca2749bad22e6e58 100644 (file)
@@ -55,7 +55,7 @@ public class ValidationUtils {
         if(expressionList == null || expressionList.isEmpty())\r
             throw new UndefinedExpressionException();\r
         for(Resource expression : expressionList) {\r
-            Collection<Statement> statements = graph.getStatements(expression, sr.HasEquation);\r
+            Collection<Statement> statements = graph.getStatements(expression, sr.Expression_equation);\r
             if(statements.isEmpty())\r
                 throw new UndefinedExpressionException();\r
 \r
@@ -94,7 +94,7 @@ public class ValidationUtils {
      */\r
     private static List<Resource> getExpressions(ReadGraph graph, Resource r) throws DatabaseException {\r
         SysdynResource sr = SysdynResource.getInstance(graph);\r
-        Resource hasExpressions = graph.getPossibleObject(r, sr.HasExpressions);\r
+        Resource hasExpressions = graph.getPossibleObject(r, sr.Variable_expressions);\r
         if(hasExpressions != null)\r
             return OrderedSetUtils.toList(graph, hasExpressions);\r
         else\r
@@ -116,7 +116,7 @@ public class ValidationUtils {
             SysdynResource sr = SysdynResource.getInstance(graph);\r
             Layer0 l0 = Layer0.getInstance(graph);\r
 \r
-            Collection<Resource> dependencies = graph.getObjects(r, sr.IsHeadOf);\r
+            Collection<Resource> dependencies = graph.getObjects(r, sr.Variable_isHeadOf);\r
 \r
             for(Resource d : dependencies) {\r
                 if(graph.isInstanceOf(d, sr.Dependency)) {\r
index 1bfea7c338ac7f0bca3b39ab27bb04e635981d46..d14135a9a039f24eff5638f6fa6c555359ee6340 100644 (file)
@@ -392,21 +392,21 @@ public class WizardModulesExportPage extends WizardPage {
                        ArrayList<Pair<Resource, Resource>> replacements = new ArrayList<Pair<Resource, Resource>>();\r
 \r
                        for(Resource enumeration : graph.syncRequest(new ObjectsWithType(configuration, l0.ConsistsOf, sr.Enumeration))) {\r
-                               if(graph.hasStatement(enumeration, sr.ReplacedEnumeration_Inverse)) {\r
-                                       for(Resource replacement : graph.getObjects(enumeration, sr.ReplacedEnumeration_Inverse)) {\r
+                               if(graph.hasStatement(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
+                                       for(Resource replacement : graph.getObjects(enumeration, sr.Redeclaration_replacedEnumeration_Inverse)) {\r
                                                replacements.add(new Pair<Resource, Resource>(enumeration, replacement));\r
                                        }\r
                                }\r
                        }\r
                        \r
                        for(Pair<Resource,Resource> replacement : replacements)\r
-                               graph.deny(replacement.first, sr.ReplacedEnumeration_Inverse, replacement.second);\r
+                               graph.deny(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second);\r
                        \r
                        TransferableGraph1 tg = graph.syncRequest(new TransferableGraphRequest2(roots, component));\r
                        Files.createFile(new File(path), Bindings.getBindingUnchecked(TransferableGraph1.class), tg);\r
                        \r
                        for(Pair<Resource,Resource> replacement : replacements)\r
-                               graph.claim(replacement.first, sr.ReplacedEnumeration_Inverse, replacement.second);\r
+                               graph.claim(replacement.first, sr.Redeclaration_replacedEnumeration_Inverse, replacement.second);\r
 \r
                } catch (RuntimeBindingConstructionException e) {\r
                        e.printStackTrace();\r
index a68c2eef5e21c0ade3344372ed0a20b5c2b9f90b..31dc733eca75f2a3f82187c48f38be94fd807eed 100644 (file)
@@ -47,13 +47,13 @@ public class ChildVariable extends AbstractChildVariable {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                if(this.resource == null) return null;\r
                //FIXME: doesn't support multiple expressions\r
-               Resource expressions = graph.getPossibleObject(this.resource, sr.HasExpressions);\r
+               Resource expressions = graph.getPossibleObject(this.resource, sr.Variable_expressions);\r
                if(expressions == null) return null;\r
                List<Resource> expressionList = OrderedSetUtils.toList(graph, expressions);\r
                Resource expression = expressionList.get(0);\r
                if(expression == null) return null;\r
                if(!graph.isInstanceOf(expression, sr.ParameterExpression)) return null;\r
-               String text = graph.getPossibleRelatedValue(expression, sr.HasEquation);\r
+               String text = graph.getPossibleRelatedValue(expression, sr.Expression_equation);\r
                if(text == null) return null;\r
                Double value = Double.parseDouble(text); \r
                return (T)value;\r
@@ -65,13 +65,13 @@ public class ChildVariable extends AbstractChildVariable {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                if(this.resource == null) return;\r
                //FIXME: doesn't support multiple expressions\r
-               Resource expressions = graph.getPossibleObject(this.resource, sr.HasExpressions);\r
+               Resource expressions = graph.getPossibleObject(this.resource, sr.Variable_expressions);\r
                if(expressions == null) return;\r
                List<Resource> expressionList = OrderedSetUtils.toList(graph, expressions);\r
                Resource expression = expressionList.get(0);\r
                if(expression == null) return;\r
                if(!graph.isInstanceOf(expression, sr.ParameterExpression)) return;\r
-               graph.claimLiteral(expression, sr.HasEquation, object.toString(), Bindings.STRING);\r
+               graph.claimLiteral(expression, sr.Expression_equation, object.toString(), Bindings.STRING);\r
        }\r
        \r
        // FIXME: Support properties! This is just for the system to work like it used to. \r
index c5f050858806097fef51416a47f7a0849480068f..62118077067090bc99b6a4a8207ca2b7649cbd7c 100644 (file)
@@ -79,12 +79,12 @@ public class VariableRVIUtils {
     private static void traverseIndexes(ReadGraph g, String rvi, HashMap<String, String> rvis, List<Resource> arrayIndexes, Resource currentEnumeration, String indexesSoFar, String indexNamesSoFar) throws DatabaseException {\r
         SysdynResource sr = SysdynResource.getInstance(g);\r
         // Enumeration indexes of the current enumeration (e.g. the first EnumIndexes in Var[EnumIndexes, EnumIndexes, EnumIndexes])\r
-        Resource enumerationIndexes = g.getPossibleObject(currentEnumeration, sr.HasEnumerationIndexes);\r
+        Resource enumerationIndexes = g.getPossibleObject(currentEnumeration, sr.Enumeration_enumerationIndexes);\r
         if(enumerationIndexes == null)\r
             return;\r
         List<Resource> indexes = OrderedSetUtils.toList(g, enumerationIndexes);\r
         for(int i = 0; i < indexes.size(); i++) {\r
-            Boolean b = g.getPossibleRelatedValue(indexes.get(i), sr.ShowEnumerationIndexInCharts, Bindings.BOOLEAN);\r
+            Boolean b = g.getPossibleRelatedValue(indexes.get(i), sr.EnumerationIndex_showEnumerationIndexInCharts, Bindings.BOOLEAN);\r
             // If this index is not wanted to be shown in charts, the recursion does not go any further and rvis.put() is not called for this enumeration\r
             if(Boolean.TRUE.equals(b)) {\r
                 int arrayIndex = arrayIndexes.indexOf(currentEnumeration);\r
@@ -127,11 +127,11 @@ public class VariableRVIUtils {
                     // If the variable is located in a module, it might have overridden (redeclared) enumerations\r
                     boolean somethingIsReplaced = false;\r
                     // Find all redeclarations\r
-                    for(Resource redeclaration : graph.syncRequest(new ObjectsWithType(module, sr.HasRedeclaration, sr.Redeclaration))) {\r
-                        Resource replaced = graph.getSingleObject(redeclaration, sr.ReplacedEnumeration);\r
+                    for(Resource redeclaration : graph.syncRequest(new ObjectsWithType(module, sr.Module_redeclaration, sr.Redeclaration))) {\r
+                        Resource replaced = graph.getSingleObject(redeclaration, sr.Redeclaration_replacedEnumeration);\r
                         if(enumerations.contains(replaced)) {\r
                             // Replace the redelcared enumeration in enumerations -list with the replacing enumeration\r
-                            enumerations.add(enumerations.indexOf(replaced), graph.getSingleObject(redeclaration, sr.ReplacingEnumeration));\r
+                            enumerations.add(enumerations.indexOf(replaced), graph.getSingleObject(redeclaration, sr.Redeclaration_replacingEnumeration));\r
                             enumerations.remove(replaced);\r
                             somethingIsReplaced = true;\r
                         }\r
@@ -168,7 +168,7 @@ public class VariableRVIUtils {
 \r
         Resource r = variable.getPropertyValue(graph, Variables.REPRESENTS);\r
 \r
-        Resource arrayIndexes = graph.getPossibleObject(r, sr.HasArrayIndexes);\r
+        Resource arrayIndexes = graph.getPossibleObject(r, sr.Variable_arrayIndexes);\r
         if(arrayIndexes == null) {\r
             // If variable is single-dimensional, use the same rvi\r
             rvis.put(rvi, rvi);\r
index e3d02a2cc3fd33eaed89ac504ffb892cfe63e278..91fb1cd9b6104df0f306f4a2bf5a49ac9b6fba7b 100644 (file)
@@ -183,7 +183,7 @@ public class FunctionUtils {
                        String name = NameUtils.getSafeName(graph, externalFunction);\r
                        if(name.endsWith(".o") || name.endsWith(".a")) {\r
                                FileOutputStream fos = new FileOutputStream(dir + "\\" + name);\r
-                               byte[] fileBArray = graph.getPossibleRelatedValue(externalFunction, sr.HasExternalFile, Bindings.BYTE_ARRAY);\r
+                               byte[] fileBArray = graph.getPossibleRelatedValue(externalFunction, sr.ExternalFunctionFile_externalFile, Bindings.BYTE_ARRAY);\r
                                fos.write(fileBArray);\r
                                fos.close();\r
                        }\r
@@ -282,7 +282,7 @@ public class FunctionUtils {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                for(Resource function : graph.syncRequest(new ObjectsWithType(library, l0.ConsistsOf, sr.SysdynModelicaFunction))) {\r
                        String name = NameUtils.getSafeName(graph, function);\r
-                       String functionCode = graph.getRelatedValue(function, sr.HasModelicaFunctionCode);\r
+                       String functionCode = graph.getRelatedValue(function, sr.SysdynModelicaFunction_modelicaFunctionCode);\r
                        stream.println("function " + name);\r
                        stream.println(functionCode);\r
                        stream.println("end " + name + ";\n");\r
index 2dbe53d533021ed3f0273a33843b6ef5e22a895c..fec55b04044275afa382251ff82ba2e67fb35cfa 100644 (file)
@@ -91,8 +91,8 @@ public class SysdynExperiment extends Experiment implements IDynamicExperiment {
                                                        l0.HasLabel, name,\r
                                                        l0.HasName, name,\r
                                                        l0.PartOf, model,\r
-                                                       sr.HasResultFile, file.getAbsolutePath());\r
-                                       graph.claim(experiment, sr.HasResult, res);\r
+                                                       sr.Result_resultFile, file.getAbsolutePath());\r
+                                       graph.claim(experiment, sr.Experiment_result, res);\r
                                        sysdynModel.getSysdynResult().saveToFile(file);\r
                                }\r
                        });\r
index 4ffb342bdea051bd54456d3ece0c49280acd9361..2bb5a165a7a4602b84cd82ece20be041149023f3 100644 (file)
@@ -201,12 +201,12 @@ public class SysdynModel implements IMappingListener, IModel {
                     Resource model = graph.getSingleObject(getConfigurationResource(), SIMU.IsConfigurationOf);\r
                     Collection<Resource> experiments = graph.syncRequest(new ObjectsWithType(model, l0.ConsistsOf, sr.Experiment));\r
                     for(Resource experiment : experiments) {\r
-                        Collection<Resource> experimentResults = graph.getObjects(experiment, sr.HasResult);\r
+                        Collection<Resource> experimentResults = graph.getObjects(experiment, sr.Experiment_result);\r
                         for(Resource result : experimentResults) {\r
-                            if(graph.hasStatement(result, sr.ShowResult)) {\r
+                            if(graph.hasStatement(result, sr.Result_showResult)) {\r
                                 SysdynResult sysdynResult = new SysdynResult(\r
                                         (String) graph.getPossibleRelatedValue(result, l0.HasLabel),\r
-                                        (String) graph.getPossibleRelatedValue(result, sr.HasResultFile));\r
+                                        (String) graph.getPossibleRelatedValue(result, sr.Result_resultFile));\r
                                 activeResults.add(sysdynResult);\r
                             }\r
                         }\r
@@ -292,6 +292,7 @@ public class SysdynModel implements IMappingListener, IModel {
         inits.put("outputFormat", outputFormat);\r
         if(numberOfIntervals != null) {\r
             inits.put("step value", numberOfIntervals.toString());\r
+            inits.put("numberOfIntervals", "" + ((int)((stopTime - startTime) / numberOfIntervals)));\r
         } else {\r
             inits.put("step value", "" + (stopTime - startTime) / 500);\r
         }\r
index 814c0beb1132550c6e2699a150eecaee1fffbeee..ad5ce4e041f9811fef2d816ec6c6b10d8d0f41e1 100644 (file)
@@ -230,9 +230,9 @@ public class SysdynPlaybackExperiment extends SysdynExperiment implements IDynam
         Double[] numbers = new Double[3];\r
         Resource model = getModel();\r
         SysdynResource sr = SysdynResource.getInstance(graph);\r
-        numbers[0] = graph.getRelatedValue(model, sr.HasStartTime);\r
-        numbers[1] = graph.getRelatedValue(model, sr.HasStopTime);\r
-        numbers[2] = graph.getPossibleRelatedValue(model, sr.HasOutputInterval);\r
+        numbers[0] = graph.getRelatedValue(model, sr.SysdynModel_startTime);\r
+        numbers[1] = graph.getRelatedValue(model, sr.SysdynModel_stopTime);\r
+        numbers[2] = graph.getPossibleRelatedValue(model, sr.SysdynModel_outputInterval);\r
 \r
         PlaybackConfiguration config = new PlaybackConfiguration();\r
         config.simulationDuration = numbers[1] - numbers[0] - time;\r
index 375878d23c67704b8266dd50661989666a79e091..62c3764be5c9bb64eb5f441b12e2d144e05e4602 100644 (file)
@@ -26,7 +26,7 @@ public class Auxiliary extends Variable {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                Resource e = GraphUtils.create2(graph, \r
                                sr.NormalExpression,\r
-                               sr.HasEquation, ImportUtils.escapeExpression(expression.getExpression()).trim());\r
+                               sr.Expression_equation, ImportUtils.escapeExpression(expression.getExpression()).trim());\r
                return e;\r
        }\r
 \r
index 65b4c60ac8ecd6c3e4a2f2c3d47dac089050072b..1b5bdc8e6f0af186491ed8fbf09d9225e1d5f52a 100644 (file)
@@ -40,7 +40,7 @@ public class Dependency extends Connection {
                        if(connection != null) {\r
                                ModelingResources mr = ModelingResources.getInstance(graph);\r
                                Resource diagramConnection = graph.getSingleObject(connection, mr.ConnectionToDiagramConnection);\r
-                               graph.claimLiteral(diagramConnection, sr.angle, angle);\r
+                               graph.claimLiteral(diagramConnection, sr.Dependency_angle, angle);\r
                        }\r
 \r
                } catch (DatabaseException e) {\r
index faadc02fbfafd99a9dffb02dda40ff7d314a01db..43afed7e07ee41b8f5dde158d616aaae9f1ecbf2 100644 (file)
@@ -46,7 +46,7 @@ public class Function extends Variable {
                                sb.append("    output Real result;\n");\r
                                sb.append("algorithm\n");\r
                                sb.append("    result := interpolate(a, " + expressions.get(0).getExpression() + ");");\r
-                               graph.claimLiteral(function, sr.HasModelicaFunctionCode, sb.toString());\r
+                               graph.claimLiteral(function, sr.SysdynModelicaFunction_modelicaFunctionCode, sb.toString());\r
                        }\r
 \r
                        graph.claim(parent, l0.ConsistsOf, function);\r
index 48cc1fce7cd266cad414ca38122bf0282b1d8112..3e0caf6dec5d99acd41e9d750399a22cce84597b 100644 (file)
@@ -234,8 +234,8 @@ public class Model implements IWriteableMDLObject {
                                        l0.PartOf, parent,\r
                                        l0.HasName, NameUtils.findFreshName(graph, getName(), parent, l0.ConsistsOf, "%s%d"),\r
                                        l0.HasLabel, getName(),\r
-                                       sr.HasStartTime, startTime,\r
-                                       sr.HasStopTime, endTime,\r
+                                       sr.SysdynModel_startTime, startTime,\r
+                                       sr.SysdynModel_stopTime, endTime,\r
                                        l0.IsLinkedTo, sysdyn,\r
                                        l0.IsLinkedTo, layer0\r
                        );\r
index e3437f38e3d463793f4b470ea763d799e526796a..61f3111bab8b2740de4cb4293736afddcd25408d 100644 (file)
@@ -27,7 +27,7 @@ public class Stock extends Variable {
                SysdynResource sr = SysdynResource.getInstance(graph);\r
                Resource e = GraphUtils.create2(graph, \r
                                sr.StockExpression,\r
-                               sr.HasInitialEquation, integralEquation);\r
+                               sr.StockExpression_initialEquation, integralEquation);\r
                \r
                return e;\r
        }\r
index 40ca47616beec3d316a08bc670c6f02ce2a2ae12..a0087d4ef0dc55cdc4711bcc2bfbbf88af2b18ed 100644 (file)
@@ -53,7 +53,7 @@ public class Subscript extends Variable {
                        Resource enumeration = GraphUtils.create2(graph, \r
                                        sr.Enumeration,\r
                                        l0.HasName, this.getName(),\r
-                                       sr.HasEnumerationIndexes, enumerationIndexes);\r
+                                       sr.Enumeration_enumerationIndexes, enumerationIndexes);\r
 \r
                        graph.claim(parent, l0.ConsistsOf, enumeration);\r
 \r
index e3987d150880bd44497e2827a3bb756929491471..620ad56b57d6d0579b44bf7f76e8e09aad1924b2 100644 (file)
@@ -26,7 +26,7 @@ public class Valve extends Variable {
                String expressionString =  ImportUtils.escapeExpression(expression.getExpression());\r
                Resource e = GraphUtils.create2(graph, \r
                                sr.NormalExpression,\r
-                               sr.HasEquation, expressionString.trim());\r
+                               sr.Expression_equation, expressionString.trim());\r
                return e;\r
        }\r
 \r
index 126dd35ebe9b22b05a4adf7ef288e312db9889ac..02c5f706ffde989c11bad4a6e4d08cba97bc979c 100644 (file)
@@ -59,7 +59,7 @@ public abstract class Variable extends Element {
                Resource variable = GraphUtils.create2(graph, \r
                                variableType,\r
                                l0.HasName, ImportUtils.escapeName(name),\r
-                               sr.HasExpressions, expressionList);\r
+                               sr.Variable_expressions, expressionList);\r
                graph.claim(variable, mr.Mapped, variable);\r
 \r
                for(Expression e : getExpressions()) {\r
@@ -68,7 +68,7 @@ public abstract class Variable extends Element {
                    Resource expression = getExpression(graph, e);\r
 \r
                    if(e.getRange() != null) {\r
-                       graph.claimLiteral(expression, sr.HasArrayRange, "[" + e.getRange().trim() + "]");\r
+                       graph.claimLiteral(expression, sr.Expression_arrayRange, "[" + e.getRange().trim() + "]");\r
                    }\r
                    OrderedSetUtils.add(graph, expressionList, expression);\r
                    graph.claim(variable, l0.ConsistsOf, expression);\r
@@ -79,7 +79,7 @@ public abstract class Variable extends Element {
                        if(sub.getResource() != null)\r
                                        OrderedSetUtils.add(graph, arrayIndexList, sub.getResource());\r
                        }\r
-                       graph.claim(variable, sr.HasArrayIndexes, arrayIndexList);\r
+                       graph.claim(variable, sr.Variable_arrayIndexes, arrayIndexList);\r
                }\r
                \r
                if(units != null && units.length() > 0)\r
index a9a7be8ba1af5b1512a3992096046bb8d9f3ba17..c9cecaf02ea077199015ffedd9a4995ccb345cdf 100644 (file)
@@ -182,7 +182,7 @@ public class ModelicaWriter {
         b.append("// Default values for inputs in modules\n");\r
         for(String moduleLabel : moduleInputs.keySet()) {\r
             for(Input input : moduleInputs.get(moduleLabel)) {\r
-                b.append("    " + moduleLabel + "." + input.getName() + " = " + input.getDefaultInputValue() + ";\n");\r
+                b.append("    " + moduleLabel + "." + input.getName() + " = " + input.getDefaultInputValue(moduleLabel) + ";\n");\r
             }\r
         }\r
 \r
index 1db1239be7ea9d1f43de564a784dad9a9c2eb4d1..869ff09e6362b34b9b940051d993991bd7c3b45c 100644 (file)
@@ -4,8 +4,9 @@ import java.util.ArrayList;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedOrderedSetElements;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/ArrayIndexes")\r
+@GraphType(SysdynResource.URIs.ArrayIndexes)\r
 public class ArrayIndexes {\r
        \r
     @RelatedOrderedSetElements\r
index fa150c789f122aed120f512393b5d2588c0f7fed..bf68a9d4a183e8b4c3bc01ac0d01a3a19c6e4137 100644 (file)
 package org.simantics.sysdyn.representation;\r
 \r
 import org.simantics.objmap.annotations.GraphType;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Auxiliary")\r
+@GraphType(SysdynResource.URIs.Auxiliary)\r
 public class Auxiliary extends IndependentVariable {\r
     @Override\r
     public void accept(IElementVisitorVoid v) {\r
index 8456e27c1b9335e337fdd1aaa807efd927f9b505..c4621a7e788f80ea970f2f4972a31a7c6d8443c9 100644 (file)
@@ -3,6 +3,7 @@ package org.simantics.sysdyn.representation;
 import java.util.ArrayList;\r
 import java.util.List;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
@@ -11,7 +12,7 @@ import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;
 public class Book extends Variable {\r
     \r
     @RelatedElements(\r
-            value = "http://www.simantics.org/Layer0-1.0/ConsistsOf",\r
+            value = Layer0.URIs.ConsistsOf,\r
             composition = true)\r
             private ArrayList<Sheet> sheets = new ArrayList<Sheet>();\r
 \r
index 56840b6c0acad74e304a17d2bd2c2fe7890be5de..1244dcf28842eae6b1e0cbebcc043b344622e7a0 100644 (file)
 package org.simantics.sysdyn.representation;\r
 \r
 import org.simantics.objmap.annotations.GraphType;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Cloud")\r
+@GraphType(SysdynResource.URIs.Cloud)\r
 public class Cloud implements IElement {\r
     @Override\r
     public void accept(IElementVisitorVoid v) {\r
index b2e8e8a5389e9ee6ac97705d41c003d284fbdd69..02279551b912f5f016338c662190563c5412bc81 100644 (file)
@@ -13,29 +13,33 @@ package org.simantics.sysdyn.representation;
 \r
 import java.util.ArrayList;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.simulation.ontology.SimulationResource;\r
+import org.simantics.structural.stubs.StructuralResource2;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Configuration")\r
+@GraphType(SysdynResource.URIs.Configuration)\r
 public class Configuration {\r
     \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasName")\r
+    @RelatedValue(Layer0.URIs.HasName)\r
     private String name;\r
 \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasLabel")\r
+    @RelatedValue(Layer0.URIs.HasLabel)\r
     private String label;\r
     \r
-    @RelatedElement("http://www.simantics.org/Structural-1.0/Defines")\r
+    @RelatedElement(StructuralResource2.URIs.Defines)\r
     private ModuleType moduleType;\r
-    \r
-    @RelatedElement("http://www.simantics.org/Simulation-1.0/IsConfigurationOf")\r
+\r
+    @RelatedElement(SimulationResource.URIs.IsConfigurationOf)\r
     private Model model;\r
 \r
     @RelatedElements(\r
-            value = "http://www.simantics.org/Layer0-1.0/ConsistsOf",\r
+            value = Layer0.URIs.ConsistsOf,\r
             composition = true)\r
             private ArrayList<IElement> elements = new ArrayList<IElement>();\r
 \r
index 2b220fbf847520519ec5b16f38bb94876e35df78..a907c3f233f764c3b86d911a182ef3305b6656e9 100644 (file)
@@ -13,15 +13,16 @@ package org.simantics.sysdyn.representation;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Dependency")\r
+@GraphType(SysdynResource.URIs.Dependency)\r
 public class Dependency implements IElement {\r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasTail")\r
+    @RelatedElement(SysdynResource.URIs.HasTail)\r
     private IElement tail;\r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasHead")\r
+    @RelatedElement(SysdynResource.URIs.HasHead)\r
     private IElement head;\r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/RefersTo")\r
+    @RelatedElement(SysdynResource.URIs.Dependency_refersTo)\r
     private IElement refersTo;\r
     \r
     @Override\r
index f30cc2843bfbbc5ab648d1937896060634c3a17d..3ad14641cb7874742a3a9a85d435d949cfcca6aa 100644 (file)
  *******************************************************************************/\r
 package org.simantics.sysdyn.representation;\r
 \r
+import org.simantics.diagram.stubs.DiagramResource;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Diagram-2.1/DiagramContainer")\r
+@GraphType(DiagramResource.URIs.DiagramContainer)\r
 public class DiagramContainerDummy implements IElement {\r
     \r
     @Override\r
index 741f3375dbe1ab496f51c33f6c415965d6efc152..51996a197f2657531652f7f46537e75944532a1f 100644 (file)
@@ -17,19 +17,20 @@ import org.simantics.objmap.annotations.GraphType;
 import org.simantics.objmap.annotations.RelatedElement;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Enumeration")\r
+@GraphType(SysdynResource.URIs.Enumeration)\r
 public class Enumeration extends Variable {\r
        \r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasEnumerationIndexes")\r
+    @RelatedElement(SysdynResource.URIs.Enumeration_enumerationIndexes)\r
     private EnumerationIndexes enumerationIndexes;\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/IsReplaceable")\r
+    @RelatedValue(SysdynResource.URIs.Enumeration_isReplaceable)\r
     private Boolean isReplaceable;\r
     \r
     @RelatedElements(\r
-            value = "http://www.simantics.org/Sysdyn-1.1/ReplacedEnumeration/Inverse",\r
+            value = SysdynResource.URIs.Redeclaration_replacedEnumeration_Inverse,\r
             composition = true)\r
             private ArrayList<Redeclaration> redeclarations = new ArrayList<Redeclaration>();\r
 \r
@@ -45,6 +46,9 @@ public class Enumeration extends Variable {
                sb.append(this.name + "_class");\r
                sb.append(" " + this.name);\r
                sb.append(";\n");\r
+               \r
+               sb.append("    parameter Integer " + this.name + "_size = " + this.name + ".size;\n");\r
+               sb.append("    parameter Integer " + this.name + "_elements[:] = " + this.name + ".elements;\n");\r
                return sb.toString();\r
        }\r
        \r
index 0d565c41edfea2a81d33699ee4eb0a554bcc3cb3..47ee9864fe83ec4e5b8fb7b1bf9623c479f38080 100644 (file)
@@ -1,12 +1,14 @@
 package org.simantics.sysdyn.representation;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/EnumerationIndex")\r
+@GraphType(SysdynResource.URIs.EnumerationIndex)\r
 public class EnumerationIndex {\r
 \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasName")\r
+    @RelatedValue(Layer0.URIs.HasName)\r
     protected String name;\r
     \r
     public String getName() {\r
index 43e111f3a2a694b1cbcfba1ba3a04903425ea03a..fa7eca93510b457cbdb95b91b58803073c0caac1 100644 (file)
@@ -4,8 +4,9 @@ import java.util.ArrayList;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedOrderedSetElements;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/EnumerationIndexes")\r
+@GraphType(SysdynResource.URIs.EnumerationIndexes)\r
 public class EnumerationIndexes {\r
        \r
     @RelatedOrderedSetElements\r
index 98996b11f85607bb77da53721342b3c6d0ad0f7c..786855b35bbbe29c5477911ed2f69a50f9eba91f 100644 (file)
@@ -13,13 +13,14 @@ package org.simantics.sysdyn.representation;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Flow")\r
+@GraphType(SysdynResource.URIs.Flow)\r
 public class Flow implements IElement {\r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasTail")\r
+    @RelatedElement(SysdynResource.URIs.HasTail)\r
     private IElement tail;\r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasHead")\r
+    @RelatedElement(SysdynResource.URIs.HasHead)\r
     private IElement head;\r
     \r
     @Override\r
index 5ad136a2658860d79bbefbcbd8b1780a031be780..96f3a5c4be102e0ab59655c8393c049bc83df8e3 100644 (file)
@@ -18,14 +18,15 @@ import java.util.List;
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Input")\r
+@GraphType(SysdynResource.URIs.Input)\r
 public class Input extends Variable {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasDefaultInputValue")\r
+    @RelatedValue(SysdynResource.URIs.Input_defaultInputValue)\r
     private Double defaultInputValue;\r
-    @RelatedElements("http://www.simantics.org/Sysdyn-1.1/IsHeadOf")\r
+    @RelatedElements(SysdynResource.URIs.Variable_isHeadOf)\r
     private List<IElement> isHeadOf;\r
     \r
     \r
@@ -35,25 +36,29 @@ public class Input extends Variable {
         v.visit(this);\r
     }\r
 \r
-    public String getDefaultInputValue() {\r
+    public String getDefaultInputValue(String inModule) {\r
         if( getArrayIndexes() == null || getArrayIndexes().getEnumerations().isEmpty()) {\r
-               return defaultInputValue.toString();\r
+            return defaultInputValue.toString();\r
         } else {\r
-               StringBuilder sb = new StringBuilder();\r
-               sb.append("fill(");\r
-               sb.append(defaultInputValue);\r
-               sb.append(", ");\r
-               Iterator<Enumeration> i = getArrayIndexes().getEnumerations().iterator();\r
-               while(i.hasNext()) {\r
-                       Enumeration e = i.next();\r
-                       sb.append(e.getEnumerationIndexes().size());\r
-                       if(i.hasNext())\r
-                               sb.append(", ");\r
-               }\r
-               sb.append(")");\r
-               return sb.toString();\r
+            StringBuilder sb = new StringBuilder();\r
+            sb.append("fill(");\r
+            sb.append(defaultInputValue);\r
+            sb.append(", ");\r
+            Iterator<Enumeration> i = getArrayIndexes().getEnumerations().iterator();\r
+            while(i.hasNext()) {\r
+                Enumeration e = i.next();\r
+                sb.append((!inModule.isEmpty() && inModule != null ? inModule + "." : "") + e.getName() + ".size");\r
+                if(i.hasNext())\r
+                    sb.append(", ");\r
+            }\r
+            sb.append(")");\r
+            return sb.toString();\r
         }\r
     }\r
+    \r
+    public String getDefaultInputValue() {\r
+        return getDefaultInputValue(null);\r
+    }\r
 \r
     public boolean isHeadOfDependency() {\r
         return !isHeadOf.isEmpty();\r
index 8762ade857e54e738ee5bf7020785641444b2604..9e0c59b1dc38d16c058924ae9924f48c4472f0c5 100644 (file)
@@ -1,10 +1,11 @@
 package org.simantics.sysdyn.representation;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
 \r
-@GraphType("http://www.simantics.org/Layer0-1.0/Library")\r
+@GraphType(Layer0.URIs.Library)\r
 public class LibraryDummy implements IElement {\r
        \r
     @Override\r
index 8be91f1361553086419873cd3e3d63be830655d9..d2d5da2daa549caa880a8520eb5093b1f210e1f2 100644 (file)
@@ -13,23 +13,24 @@ package org.simantics.sysdyn.representation;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/SysdynModel")\r
+@GraphType(SysdynResource.URIs.SysdynModel)\r
 public class Model {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasStartTime")\r
+    @RelatedValue(SysdynResource.URIs.SysdynModel_startTime)\r
     private Double startTime = 0.0;\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasStopTime")\r
+    @RelatedValue(SysdynResource.URIs.SysdynModel_stopTime)\r
     private Double stopTime = 10.0;\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasOutputInterval")\r
+    @RelatedValue(SysdynResource.URIs.SysdynModel_outputInterval)\r
     private Double outputInterval;\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasTolerance")\r
+    @RelatedValue(SysdynResource.URIs.SysdynModel_tolerance)\r
     private Double tolerance;\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasSolver")\r
+    @RelatedValue(SysdynResource.URIs.SysdynModel_solver)\r
     private String solver;\r
 \r
     public Double getStartTime() {\r
index 4c7fb5baa68c715cde14172b8936b2aa2f80281a..c5ece68c5759a043ed687912e42a5707a163fc7b 100644 (file)
@@ -15,25 +15,27 @@ import java.util.ArrayList;
 import java.util.Iterator;\r
 import java.util.List;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Module")\r
+@GraphType(SysdynResource.URIs.Module)\r
 public class Module implements IElement {\r
 \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasName")\r
+    @RelatedValue(Layer0.URIs.HasName)\r
     private String name;\r
 \r
-    @RelatedElement("http://www.simantics.org/Layer0-1.0/PartOf")\r
+    @RelatedElement(Layer0.URIs.PartOf)\r
     private Configuration parentConfiguration;\r
 \r
-    @RelatedElement("http://www.simantics.org/Layer0-1.0/InstanceOf")\r
+    @RelatedElement(Layer0.URIs.InstanceOf)\r
     private ModuleType type;\r
     \r
-    @RelatedElements("http://www.simantics.org/Sysdyn-1.1/HasRedeclaration")\r
+    @RelatedElements(SysdynResource.URIs.Module_redeclaration)\r
     private List<Redeclaration> redeclarations;\r
     \r
     @Override\r
@@ -63,17 +65,13 @@ public class Module implements IElement {
      */\r
     public String getDeclaration() {\r
        \r
-       StringBuilder parameters = new StringBuilder();\r
        StringBuilder redeclarations = new StringBuilder();\r
-       \r
-       \r
        if(!getRedeclarations().isEmpty()) {\r
                redeclarations.append("(");\r
                Iterator<Redeclaration> i = getRedeclarations().iterator();\r
                while(i.hasNext()) {\r
                        Redeclaration rd = i.next();\r
                        redeclarations.append(rd.getRedeclaration());\r
-                       parameters.append(rd.getParameters());\r
                        if(i.hasNext())\r
                                redeclarations.append(",");\r
                }\r
@@ -82,7 +80,6 @@ public class Module implements IElement {
        \r
        \r
        StringBuilder sb = new StringBuilder();\r
-       sb.append(parameters);\r
        sb.append("    ");\r
        sb.append(getType().getName());\r
        sb.append(" ");\r
index 826937b9f3099d89a529e1b4d92584965249412b..148018c7d255827d2fe69274ef0f24c186bed9ae 100644 (file)
  *******************************************************************************/\r
 package org.simantics.sysdyn.representation;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.structural.stubs.StructuralResource2;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Structural-1.0/ComponentType")\r
+@GraphType(StructuralResource2.URIs.ComponentType)\r
 public class ModuleType implements IElement {\r
 \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasName")\r
+    @RelatedValue(Layer0.URIs.HasName)\r
     private String name;\r
     \r
-    @RelatedElement("http://www.simantics.org/Structural-1.0/IsDefinedBy")\r
+    @RelatedElement(StructuralResource2.URIs.IsDefinedBy)\r
     private Configuration configuration;\r
 \r
     public String getName() {\r
index 417fbbaba7e9d66117921a323e953920476ed15b..6f1e8b3c201622fb56346f073643385685a55782 100644 (file)
@@ -13,77 +13,33 @@ package org.simantics.sysdyn.representation;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Redeclaration")\r
+@GraphType(SysdynResource.URIs.Redeclaration)\r
 public class Redeclaration {\r
        \r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/ReplacedEnumeration")\r
+    @RelatedElement(SysdynResource.URIs.Redeclaration_replacedEnumeration)\r
     private Enumeration replacedEnumeration;\r
     \r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/ReplacingEnumeration")\r
+    @RelatedElement(SysdynResource.URIs.Redeclaration_replacingEnumeration)\r
     private Enumeration replacingEnumeration;\r
     \r
     public String getRedeclaration() {\r
        if(replacedEnumeration == null || replacingEnumeration == null) {\r
                return "";\r
        }\r
-       String separator = getSeparator();\r
        StringBuilder sb = new StringBuilder();\r
        sb.append(replacedEnumeration.getName());\r
        sb.append(".size = ");\r
        sb.append(replacingEnumeration.getName());\r
-       sb.append(separator + "size, ");\r
+       sb.append("_size, ");\r
        sb.append(replacedEnumeration.getName());\r
        sb.append(".elements = ");\r
        sb.append(replacingEnumeration.getName());\r
-       sb.append(separator + "elements");\r
+       sb.append("_elements");\r
        \r
        return sb.toString();\r
     }\r
-    \r
-    /**\r
-     * Change the name of the re-declaration parameters to enable the use of \r
-     * enumerations with same names.\r
-     * \r
-     * @return\r
-     */\r
-    public String getParameters() {\r
-       String separator = getSeparator();\r
-       StringBuilder sb = new StringBuilder();\r
-       sb.append("    parameter Integer " + replacingEnumeration.getName() + separator + "size = " + replacingEnumeration.getName() + ".size;\n");\r
-       sb.append("    parameter Integer " + replacingEnumeration.getName() + separator + "elements[:] = " + replacingEnumeration.getName() + ".elements;\n");\r
-       return sb.toString();\r
-    }\r
-    \r
-    private String getSeparator() {\r
-       return getSeparator(this, "_");\r
-    }\r
-\r
-    /**\r
-     * Add enough separation marks that name conflicts would not exist.\r
-     * \r
-     * @param redeclaration\r
-     * @param separator\r
-     * @return\r
-     */\r
-    private String getSeparator(Redeclaration redeclaration, String separator) {\r
-       if(redeclaration == null || redeclaration.replacedEnumeration == null ||\r
-                       redeclaration.replacedEnumeration.getParentConfiguration() == null)\r
-               return separator = "_";\r
-       for(IElement e : redeclaration.replacedEnumeration.getParentConfiguration().getElements()) {\r
-               if(e instanceof Module) {\r
-                       for(Redeclaration rd : ((Module)e).getRedeclarations()) {\r
-                               if(rd.replacedEnumeration.name.equals(redeclaration.replacedEnumeration.name) &&\r
-                                               rd.replacingEnumeration.equals(redeclaration.replacedEnumeration)) {\r
-                                       String separatorTmp = getSeparator(rd, separator);\r
-                                       if(separatorTmp.length() > separator.length())\r
-                                               separator = separatorTmp;\r
-                               }\r
-                       }\r
-               }\r
-       }\r
-       return separator + "_";\r
-    }\r
 \r
        public Enumeration getReplacedEnumeration() {\r
                return replacedEnumeration;\r
index 00fcf7cc08a283485335df38d9d556c08626137f..e88081ebaf76fd20a838aed2bfb2ddd6e9826aa2 100644 (file)
@@ -27,7 +27,7 @@ import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;
 @GraphType("http://www.simantics.org/Spreadsheet-1.1/Spreadsheet")\r
 public class Sheet extends org.simantics.sysdyn.representation.Variable {\r
     \r
-    @RelatedElement("http://www.simantics.org/Layer0-1.0/PartOf")\r
+    @RelatedElement(Layer0.URIs.PartOf)\r
     protected Book book;\r
     \r
     HashMap<String, Object> cells = new HashMap<String, Object>();\r
index 8aee598a2e41a7753b842d98fe2a3959cdf6b585..ec92d29852a2d9c0871aaea545c45c8152b3615b 100644 (file)
@@ -15,19 +15,20 @@ import java.util.ArrayList;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedElements;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Stock")\r
+@GraphType(SysdynResource.URIs.Stock)\r
 public class Stock extends IndependentVariable {\r
 \r
     @RelatedElements(\r
-            value = "http://www.simantics.org/Sysdyn-1.1/IsHeadOf",\r
+            value = SysdynResource.URIs.Variable_isHeadOf,\r
             composition = true)\r
             private ArrayList<IElement> incomingConnections = new ArrayList<IElement>();\r
     \r
 \r
     @RelatedElements(\r
-            value = "http://www.simantics.org/Sysdyn-1.1/IsTailOf",\r
+            value = SysdynResource.URIs.Variable_isTailOf,\r
             composition = true)\r
             private ArrayList<IElement> outgoingConnections = new ArrayList<IElement>();\r
     \r
index 0ae3c3b0cd444d427ed9f69a3e8bb1d9f4c60bfb..aa3d012b9cae40dcfd4ad51f7502530f99b888ba 100644 (file)
 package org.simantics.sysdyn.representation;\r
 \r
 import org.simantics.objmap.annotations.GraphType;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.visitors.IElementVisitorVoid;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Valve")\r
+@GraphType(SysdynResource.URIs.Valve)\r
 public class Valve extends IndependentVariable {\r
     @Override\r
     public void accept(IElementVisitorVoid v) {\r
index 69c0343282799d73671a384d70d0b6c29a8f71d6..f8d5a943f713f091c6a8e369edc827652adb07f9 100644 (file)
  *******************************************************************************/\r
 package org.simantics.sysdyn.representation;\r
 \r
+import org.simantics.layer0.Layer0;\r
 import org.simantics.objmap.annotations.RelatedElement;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.expressions.Expressions;\r
 \r
 public abstract class Variable implements IElement {\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/Variable/Type")\r
+    @RelatedValue(SysdynResource.URIs.Variable_type)\r
     protected String type;\r
     \r
-    @RelatedValue("http://www.simantics.org/Layer0-1.0/HasName")\r
+    @RelatedValue(Layer0.URIs.HasName)\r
     protected String name;\r
     \r
-    @RelatedElement("http://www.simantics.org/Layer0-1.0/PartOf")\r
+    @RelatedElement(Layer0.URIs.PartOf)\r
     protected Object parent;\r
     \r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasArrayIndexes")\r
+    @RelatedElement(SysdynResource.URIs.Variable_arrayIndexes)\r
     protected ArrayIndexes arrayIndexes;\r
     \r
-    @RelatedElement("http://www.simantics.org/Sysdyn-1.1/HasExpressions")\r
+    @RelatedElement(SysdynResource.URIs.Variable_expressions)\r
     protected Expressions expressions;\r
     \r
 \r
index c4a3d1e62229b2cf5fb032c0ab1c6967a5f762bd..c134bd6c9494877bdc6ddee1f3856ccdc48fb04f 100644 (file)
@@ -13,12 +13,13 @@ package org.simantics.sysdyn.representation.expressions;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/ConstantExpression")\r
+@GraphType(SysdynResource.URIs.ConstantExpression)\r
 public class ConstantExpression extends Expression {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasEquation")\r
+    @RelatedValue(SysdynResource.URIs.Expression_equation)\r
     private String equation;\r
 \r
     @Override\r
index 852ea14cf14a5ed1a2d99c4f70990e02141239c0..b8c969b298a1c54dd6534dfd9dfbab5d73884729 100644 (file)
@@ -16,6 +16,7 @@ import java.util.Iterator;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.ArrayIndexes;\r
 import org.simantics.sysdyn.representation.Enumeration;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
@@ -48,19 +49,19 @@ import org.simantics.sysdyn.representation.utils.IndexUtils;
  * @author Teemu Lempinen\r
  *\r
  */\r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/DelayExpression")\r
+@GraphType(SysdynResource.URIs.DelayExpression)\r
 public class DelayExpression extends Expression {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/DelayExpression/initialValue")\r
+    @RelatedValue(SysdynResource.URIs.DelayExpression_initialValue)\r
     private String initialValue;\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/DelayExpression/delayTime")\r
+    @RelatedValue(SysdynResource.URIs.DelayExpression_delayTime)\r
     private String delayTime;\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/DelayExpression/order")\r
+    @RelatedValue(SysdynResource.URIs.DelayExpression_order)\r
     private Integer order;\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/DelayExpression/expression")\r
+    @RelatedValue(SysdynResource.URIs.DelayExpression_expression)\r
     private String equation;\r
 \r
     @Override\r
index ea8eb302199a44bbe4decfadf66cb096a6d69137..e500115fb26adf7de60a58fc8be08ab1eeb2ef76 100644 (file)
 package org.simantics.sysdyn.representation.expressions;\r
 \r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
 \r
 public abstract class Expression implements IExpression {\r
         \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasArrayRange")\r
+    @RelatedValue(SysdynResource.URIs.Expression_arrayRange)\r
     private String range;\r
     \r
     @Override\r
index 394ce422167707f97d2edeaaaa17d4a03296d49a..d05b987345655b797e3b5a6c8a021d97f5202097 100644 (file)
@@ -4,8 +4,9 @@ import java.util.ArrayList;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedOrderedSetElements;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/Expressions")\r
+@GraphType(SysdynResource.URIs.Expressions)\r
 public class Expressions {\r
 \r
     @RelatedOrderedSetElements\r
index e6ef859cee9c71a71cba327fdeeea6d11728a58e..5d5b4d891fb4df015c898f516653b482ed0dbb3e 100644 (file)
@@ -12,8 +12,9 @@
 package org.simantics.sysdyn.representation.expressions;\r
 \r
 import org.simantics.objmap.annotations.GraphType;\r
+import org.simantics.sysdyn.SysdynResource;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/LookupExpression")\r
+@GraphType(SysdynResource.URIs.LookupExpression)\r
 public class LookupExpression extends Expression {\r
 \r
 }\r
index 6495c4d62aac88c76650640e436d7b9204417c24..360ad57740c66c51b5295d40024d3d3f2065496f 100644 (file)
@@ -16,16 +16,17 @@ import java.util.Iterator;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.ArrayIndexes;\r
 import org.simantics.sysdyn.representation.Enumeration;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
 import org.simantics.sysdyn.representation.utils.FormatUtils;\r
 import org.simantics.sysdyn.representation.utils.IndexUtils;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/NormalExpression")\r
+@GraphType(SysdynResource.URIs.NormalExpression)\r
 public class NormalExpression extends Expression {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasEquation")\r
+    @RelatedValue(SysdynResource.URIs.Expression_equation)\r
     private String equation;\r
 \r
     @Override\r
index 14819372b612204cbca066fdaab7c4021d6d2e30..90ca0c5b309ea292d2a8811cd4c5dfd5154083fb 100644 (file)
@@ -16,15 +16,16 @@ import java.util.Iterator;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.ArrayIndexes;\r
 import org.simantics.sysdyn.representation.Enumeration;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
 import org.simantics.sysdyn.representation.utils.IndexUtils;\r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/ParameterExpression")\r
+@GraphType(SysdynResource.URIs.ParameterExpression)\r
 public class ParameterExpression extends Expression {\r
     \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasEquation")\r
+    @RelatedValue(SysdynResource.URIs.Expression_equation)\r
     private String equation;\r
     \r
     @Override\r
index 32608c3b7c9c276508efb5c1ed87425fbcccf183..6c30e6bab7bbe546f355a519986196d329889bd3 100644 (file)
@@ -18,6 +18,7 @@ import java.util.Set;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.expressionParser.ExpressionParser;\r
 import org.simantics.sysdyn.expressionParser.ParseException;\r
 import org.simantics.sysdyn.representation.ArrayIndexes;\r
@@ -37,10 +38,10 @@ import org.simantics.sysdyn.representation.utils.IndexUtils;
  * @author Teemu Lempinen\r
  *\r
  */\r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/StockExpression")\r
+@GraphType(SysdynResource.URIs.StockExpression)\r
 public class StockExpression extends Expression {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasInitialEquation")\r
+    @RelatedValue(SysdynResource.URIs.StockExpression_initialEquation)\r
     private String initialEquation;\r
 \r
     @Override\r
index 3de4ffe7c73ab914cf329f191af216dd1e2b0b03..ed99a2361408526275d07dcbf205abf4f0701f0e 100644 (file)
@@ -16,6 +16,7 @@ import java.util.Iterator;
 \r
 import org.simantics.objmap.annotations.GraphType;\r
 import org.simantics.objmap.annotations.RelatedValue;\r
+import org.simantics.sysdyn.SysdynResource;\r
 import org.simantics.sysdyn.representation.ArrayIndexes;\r
 import org.simantics.sysdyn.representation.Enumeration;\r
 import org.simantics.sysdyn.representation.IndependentVariable;\r
@@ -23,12 +24,12 @@ import org.simantics.sysdyn.representation.utils.FormatUtils;
 import org.simantics.sysdyn.representation.utils.IndexUtils;\r
 \r
 \r
-@GraphType("http://www.simantics.org/Sysdyn-1.1/WithLookupExpression")\r
+@GraphType(SysdynResource.URIs.WithLookupExpression)\r
 public class WithLookupExpression extends Expression {\r
 \r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasLookup")\r
+    @RelatedValue(SysdynResource.URIs.WithLookupExpression_lookup)\r
     private String lookupTable;\r
-    @RelatedValue("http://www.simantics.org/Sysdyn-1.1/HasEquation")\r
+    @RelatedValue(SysdynResource.URIs.WithLookupExpression_expression)\r
     private String equation;\r
 \r
     @Override\r