From a951628de0ce9902222ed290a1345c145f8af01a Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Fri, 5 Nov 2021 19:33:25 +0100 Subject: chore: rename unique to individual Suggestion by @vincemolnar to match SysML V2 terminology more closely. --- .../ProblemSemanticHighlightingCalculator.java | 6 +- language-model/problem.aird | 7292 ++++++++++---------- .../tools/refinery/language/model/ProblemUtil.java | 4 +- .../src/main/resources/model/problem.ecore | 382 +- .../src/main/resources/model/problem.genmodel | 330 +- .../language/model/tests/ProblemTestUtil.java | 6 +- .../language/mapping/PartialModelMapper.java | 4 +- .../mapping/tests/PartialModelMapperTest.xtend | 4 +- language-web/src/main/js/editor/EditorParent.ts | 2 +- language-web/src/main/js/index.tsx | 2 +- language-web/src/main/js/language/problem.grammar | 10 +- .../src/main/js/language/problemLanguageSupport.ts | 4 +- .../ProblemWebSocketServletIntegrationTest.java | 2 +- .../web/xtext/servlet/TransactionExecutorTest.java | 4 +- .../java/tools/refinery/language/Problem.xtext | 8 +- .../resource/ProblemLocationInFileProvider.java | 2 +- .../ProblemResourceDescriptionStrategy.java | 2 +- .../language/validation/ProblemValidator.java | 8 +- .../language/tests/ProblemParsingTest.xtend | 2 +- .../language/tests/scoping/NodeScopingTest.xtend | 32 +- 20 files changed, 4053 insertions(+), 4053 deletions(-) diff --git a/language-ide/src/main/java/tools/refinery/language/ide/syntaxcoloring/ProblemSemanticHighlightingCalculator.java b/language-ide/src/main/java/tools/refinery/language/ide/syntaxcoloring/ProblemSemanticHighlightingCalculator.java index 19eb1a03..01ac33f7 100644 --- a/language-ide/src/main/java/tools/refinery/language/ide/syntaxcoloring/ProblemSemanticHighlightingCalculator.java +++ b/language-ide/src/main/java/tools/refinery/language/ide/syntaxcoloring/ProblemSemanticHighlightingCalculator.java @@ -29,7 +29,7 @@ public class ProblemSemanticHighlightingCalculator extends DefaultSemanticHighli private static final String CONTAINMENT_CLASS = "containment"; private static final String ERROR_CLASS = "error"; private static final String NODE_CLASS = "node"; - private static final String UNIQUE_NODE_CLASS = "unique"; + private static final String INDIVIDUAL_NODE_CLASS = "individual"; private static final String NEW_NODE_CLASS = "new"; @Inject @@ -109,8 +109,8 @@ public class ProblemSemanticHighlightingCalculator extends DefaultSemanticHighli if (reference == ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE) { classesBuilder.add(NODE_CLASS); } - if (ProblemUtil.isUniqueNode(node)) { - classesBuilder.add(UNIQUE_NODE_CLASS); + if (ProblemUtil.isIndividualNode(node)) { + classesBuilder.add(INDIVIDUAL_NODE_CLASS); } if (ProblemUtil.isNewNode(node)) { classesBuilder.add(NEW_NODE_CLASS); diff --git a/language-model/problem.aird b/language-model/problem.aird index c5652fe4..027070bf 100644 --- a/language-model/problem.aird +++ b/language-model/problem.aird @@ -1,3646 +1,3646 @@ - - - - src/main/resources/model/problem.ecore - src/main/resources/model/problem.genmodel - build/resources/main/model/problem.ecore - build/resources/main/model/problem.genmodel - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - - - - - - - - - - - - italic - - - - - - - - - - routingStyle - - - italic - - - - - - - - - - - labelSize - - - labelSize - - - - - - - - - - - - + + + + src/main/resources/model/problem.ecore + src/main/resources/model/problem.genmodel + build/resources/main/model/problem.ecore + build/resources/main/model/problem.genmodel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + routingStyle + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + + diff --git a/language-model/src/main/java/tools/refinery/language/model/ProblemUtil.java b/language-model/src/main/java/tools/refinery/language/model/ProblemUtil.java index 5f8641bf..d8958381 100644 --- a/language-model/src/main/java/tools/refinery/language/model/ProblemUtil.java +++ b/language-model/src/main/java/tools/refinery/language/model/ProblemUtil.java @@ -53,9 +53,9 @@ public final class ProblemUtil { } } - public static boolean isUniqueNode(Node node) { + public static boolean isIndividualNode(Node node) { var containingFeature = node.eContainingFeature(); - return containingFeature == ProblemPackage.Literals.UNIQUE_DECLARATION__NODES + return containingFeature == ProblemPackage.Literals.INDIVIDUAL_DECLARATION__NODES || containingFeature == ProblemPackage.Literals.ENUM_DECLARATION__LITERALS; } diff --git a/language-model/src/main/resources/model/problem.ecore b/language-model/src/main/resources/model/problem.ecore index 775d124d..77211b66 100644 --- a/language-model/src/main/resources/model/problem.ecore +++ b/language-model/src/main/resources/model/problem.ecore @@ -1,191 +1,191 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/language-model/src/main/resources/model/problem.genmodel b/language-model/src/main/resources/model/problem.genmodel index 3a244742..094533e7 100644 --- a/language-model/src/main/resources/model/problem.genmodel +++ b/language-model/src/main/resources/model/problem.genmodel @@ -1,165 +1,165 @@ - - - problem.ecore - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + problem.ecore + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/language-model/src/testFixtures/java/tools/refinery/language/model/tests/ProblemTestUtil.java b/language-model/src/testFixtures/java/tools/refinery/language/model/tests/ProblemTestUtil.java index dadc5330..d0990dc0 100644 --- a/language-model/src/testFixtures/java/tools/refinery/language/model/tests/ProblemTestUtil.java +++ b/language-model/src/testFixtures/java/tools/refinery/language/model/tests/ProblemTestUtil.java @@ -16,6 +16,7 @@ import tools.refinery.language.model.problem.ClassDeclaration; import tools.refinery.language.model.problem.Conjunction; import tools.refinery.language.model.problem.DeleteActionLiteral; import tools.refinery.language.model.problem.EnumDeclaration; +import tools.refinery.language.model.problem.IndividualDeclaration; import tools.refinery.language.model.problem.Literal; import tools.refinery.language.model.problem.NamedElement; import tools.refinery.language.model.problem.NegativeLiteral; @@ -31,7 +32,6 @@ import tools.refinery.language.model.problem.ReferenceDeclaration; import tools.refinery.language.model.problem.Relation; import tools.refinery.language.model.problem.RuleDefinition; import tools.refinery.language.model.problem.Statement; -import tools.refinery.language.model.problem.UniqueDeclaration; import tools.refinery.language.model.problem.ValueActionLiteral; import tools.refinery.language.model.problem.ValueLiteral; import tools.refinery.language.model.problem.Variable; @@ -148,8 +148,8 @@ public class ProblemTestUtil { return named(problem.getNodes(), name); } - public Node uniqueNode(Problem problem, String name) { - var uniqueNodes = statementsOfType(problem, UniqueDeclaration.class) + public Node individualNode(Problem problem, String name) { + var uniqueNodes = statementsOfType(problem, IndividualDeclaration.class) .flatMap(declaration -> declaration.getNodes().stream()); return named(uniqueNodes, name); } diff --git a/language-to-store/src/main/java/tools/refinery/language/mapping/PartialModelMapper.java b/language-to-store/src/main/java/tools/refinery/language/mapping/PartialModelMapper.java index 1593a237..8f90a743 100644 --- a/language-to-store/src/main/java/tools/refinery/language/mapping/PartialModelMapper.java +++ b/language-to-store/src/main/java/tools/refinery/language/mapping/PartialModelMapper.java @@ -12,6 +12,7 @@ import tools.refinery.language.model.problem.Assertion; import tools.refinery.language.model.problem.AssertionArgument; import tools.refinery.language.model.problem.ClassDeclaration; import tools.refinery.language.model.problem.EnumDeclaration; +import tools.refinery.language.model.problem.IndividualDeclaration; import tools.refinery.language.model.problem.LogicValue; import tools.refinery.language.model.problem.Node; import tools.refinery.language.model.problem.NodeAssertionArgument; @@ -19,7 +20,6 @@ import tools.refinery.language.model.problem.PredicateDefinition; import tools.refinery.language.model.problem.Problem; import tools.refinery.language.model.problem.ReferenceDeclaration; import tools.refinery.language.model.problem.Statement; -import tools.refinery.language.model.problem.UniqueDeclaration; import tools.refinery.store.model.Model; import tools.refinery.store.model.ModelStore; import tools.refinery.store.model.ModelStoreImpl; @@ -183,7 +183,7 @@ public class PartialModelMapper { for (Node n : ed.getLiterals()) { enumNodeMap.put(n, nodeIter[0]++); } - } else if (s instanceof UniqueDeclaration ud) { + } else if (s instanceof IndividualDeclaration ud) { for (Node n : ud.getNodes()) { uniqueNodeMap.put(n, nodeIter[0]++); } diff --git a/language-to-store/src/test/java/tools/refinery/language/mapping/tests/PartialModelMapperTest.xtend b/language-to-store/src/test/java/tools/refinery/language/mapping/tests/PartialModelMapperTest.xtend index 52b89bae..add73c87 100644 --- a/language-to-store/src/test/java/tools/refinery/language/mapping/tests/PartialModelMapperTest.xtend +++ b/language-to-store/src/test/java/tools/refinery/language/mapping/tests/PartialModelMapperTest.xtend @@ -290,7 +290,7 @@ class PartialModelMapperTest { error invalidTaxStatus(Person p) <-> taxStatus(p, child), children(p, _q). - unique family. + individual family. Family(family). members(family, anne): true. members(family, bob). @@ -322,7 +322,7 @@ class PartialModelMapperTest { val anne = problem.node("anne") val bob = problem.node("bob") val ciri = problem.node("ciri") - val family = problem.uniqueNode("family") + val family = problem.individualNode("family") val adult = problem.findEnum("TaxStatus").literal("adult") assertTrue(model.getDataRepresentations().contains(relationMap.get(Family))) diff --git a/language-web/src/main/js/editor/EditorParent.ts b/language-web/src/main/js/editor/EditorParent.ts index 2d74b863..94ca24ea 100644 --- a/language-web/src/main/js/editor/EditorParent.ts +++ b/language-web/src/main/js/editor/EditorParent.ts @@ -143,7 +143,7 @@ export const EditorParent = styled('div')(({ theme }) => { color: theme.palette.text.secondary, }, }, - '.cmt-problem-unique': { + '.cmt-problem-individual': { '&, & .cmt-variableName': { color: theme.palette.text.primary, }, diff --git a/language-web/src/main/js/index.tsx b/language-web/src/main/js/index.tsx index dfecde37..3e077ba8 100644 --- a/language-web/src/main/js/index.tsx +++ b/language-web/src/main/js/index.tsx @@ -38,7 +38,7 @@ direct rule createChild(p): children(p, q) = true, taxStatus(q, child) = true. -unique family. +individual family. Family(family). members(family, anne). members(family, bob). diff --git a/language-web/src/main/js/language/problem.grammar b/language-web/src/main/js/language/problem.grammar index 8e39243f..0cbfa831 100644 --- a/language-web/src/main/js/language/problem.grammar +++ b/language-web/src/main/js/language/problem.grammar @@ -15,7 +15,7 @@ statement { } | EnumDefinition { ckw<"enum"> RelationName - (EnumBody { "{" sep<",", UniqueNodeName> "}" } | ".") + (EnumBody { "{" sep<",", IndividualNodeName> "}" } | ".") } | PredicateDefinition { (ckw<"error"> ckw<"pred">? | ckw<"direct">? ckw<"pred">) @@ -32,10 +32,10 @@ statement { ParameterList (":" LogicValue)? "." } | NodeValueAssertion { - UniqueNodeName ":" Constant "." + IndividualNodeName ":" Constant "." } | - UniqueDeclaration { - ckw<"unique"> sep<",", UniqueNodeName> "." + IndividualDeclaration { + ckw<"individual"> sep<",", IndividualNodeName> "." } | ScopeDeclaration { kw<"scope"> sep<",", ScopeElement> "." @@ -87,7 +87,7 @@ RelationName { QualifiedName } RuleName { QualifiedName } -UniqueNodeName { QualifiedName } +IndividualNodeName { QualifiedName } VariableName { QualifiedName } diff --git a/language-web/src/main/js/language/problemLanguageSupport.ts b/language-web/src/main/js/language/problemLanguageSupport.ts index ab1c55f9..1dba3447 100644 --- a/language-web/src/main/js/language/problemLanguageSupport.ts +++ b/language-web/src/main/js/language/problemLanguageSupport.ts @@ -27,7 +27,7 @@ const parserWithMetadata = (parser as LRParser).configure({ styleTags({ LineComment: t.lineComment, BlockComment: t.blockComment, - 'problem class enum pred rule unique scope': t.definitionKeyword, + 'problem class enum pred rule individual scope': t.definitionKeyword, 'abstract extends refers contains opposite error direct default': t.modifier, 'true false unknown error': t.keyword, 'new delete': t.operatorKeyword, @@ -40,7 +40,7 @@ const parserWithMetadata = (parser as LRParser).configure({ String: t.string, 'RelationName/QualifiedName': t.typeName, 'RuleName/QualifiedName': t.macroName, - 'UniqueNodeName/QualifiedName': t.atom, + 'IndividualNodeName/QualifiedName': t.atom, 'VariableName/QualifiedName': t.variableName, '{ }': t.brace, '( )': t.paren, diff --git a/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java b/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java index d42cc15c..d34a1610 100644 --- a/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java +++ b/language-web/src/test/java/tools/refinery/language/web/ProblemWebSocketServletIntegrationTest.java @@ -96,7 +96,7 @@ class ProblemWebSocketServletIntegrationTest { case 0 -> session.getRemote().sendString( "{\"id\":\"foo\",\"request\":{\"resource\":\"test.problem\",\"serviceType\":\"update\",\"fullText\":\"class Person.\n\"}}"); case 3 -> session.getRemote().sendString( - "{\"id\":\"bar\",\"request\":{\"resource\":\"test.problem\",\"serviceType\":\"update\",\"requiredStateId\":\"-80000000\",\"deltaText\":\"unique q.\nnode(q).\n\",\"deltaOffset\":\"0\",\"deltaReplaceLength\":\"0\"}}"); + "{\"id\":\"bar\",\"request\":{\"resource\":\"test.problem\",\"serviceType\":\"update\",\"requiredStateId\":\"-80000000\",\"deltaText\":\"individual q.\nnode(q).\n\",\"deltaOffset\":\"0\",\"deltaReplaceLength\":\"0\"}}"); case 5 -> session.close(); } } diff --git a/language-web/src/test/java/tools/refinery/language/web/xtext/servlet/TransactionExecutorTest.java b/language-web/src/test/java/tools/refinery/language/web/xtext/servlet/TransactionExecutorTest.java index 975d120c..3229597e 100644 --- a/language-web/src/test/java/tools/refinery/language/web/xtext/servlet/TransactionExecutorTest.java +++ b/language-web/src/test/java/tools/refinery/language/web/xtext/servlet/TransactionExecutorTest.java @@ -79,7 +79,7 @@ class TransactionExecutorTest { var stateId = updateFullText(); var responseHandler = sendRequestAndWaitForAllResponses( new XtextWebRequest("bar", Map.of("resource", RESOURCE_NAME, "serviceType", "update", "requiredStateId", - stateId, "deltaText", "unique q.\nnode(q).\n\n", "deltaOffset", "0", "deltaReplaceLength", "0"))); + stateId, "deltaText", "individual q.\nnode(q).\n\n", "deltaOffset", "0", "deltaReplaceLength", "0"))); var captor = newCaptor(); verify(responseHandler, times(3)).onResponse(captor.capture()); @@ -92,7 +92,7 @@ class TransactionExecutorTest { var stateId = updateFullText(); var responseHandler = sendRequestAndWaitForAllResponses( new XtextWebRequest("bar", Map.of("resource", RESOURCE_NAME, "serviceType", "update", "requiredStateId", - stateId, "deltaText", "unique q.\nnode(q).\n", "deltaOffset", "0", "deltaReplaceLength", "0"))); + stateId, "deltaText", "individual q.\nnode(q).\n", "deltaOffset", "0", "deltaReplaceLength", "0"))); var captor = newCaptor(); verify(responseHandler, times(2)).onResponse(captor.capture()); diff --git a/language/src/main/java/tools/refinery/language/Problem.xtext b/language/src/main/java/tools/refinery/language/Problem.xtext index 0fa47d63..b7562759 100644 --- a/language/src/main/java/tools/refinery/language/Problem.xtext +++ b/language/src/main/java/tools/refinery/language/Problem.xtext @@ -9,7 +9,7 @@ Problem: Statement: ClassDeclaration | EnumDeclaration | PredicateDefinition | RuleDefinition | Assertion | NodeValueAssertion | ScopeDeclaration | - UniqueDeclaration; + IndividualDeclaration; ClassDeclaration: abstract?="abstract"? "class" @@ -173,8 +173,8 @@ RangeMultiplicity: ExactMultiplicity: exactValue=INT; -UniqueDeclaration: - "unique" nodes+=EnumLiteral ("," nodes+=EnumLiteral)* "."; +IndividualDeclaration: + "individual" nodes+=EnumLiteral ("," nodes+=EnumLiteral)* "."; UpperBound returns ecore::EInt: INT | "*"; @@ -184,7 +184,7 @@ QualifiedName hidden(): Identifier: ID | "true" | "false" | "unknown" | "error" | "class" | "abstract" | "extends" | "enum" | "pred" | - "unique" | "problem" | "new" | "delete"; + "individual" | "problem" | "new" | "delete" | "direct" | "rule"; Integer returns ecore::EInt hidden(): "-"? INT; diff --git a/language/src/main/java/tools/refinery/language/resource/ProblemLocationInFileProvider.java b/language/src/main/java/tools/refinery/language/resource/ProblemLocationInFileProvider.java index b51de05d..7aa75833 100644 --- a/language/src/main/java/tools/refinery/language/resource/ProblemLocationInFileProvider.java +++ b/language/src/main/java/tools/refinery/language/resource/ProblemLocationInFileProvider.java @@ -21,7 +21,7 @@ public class ProblemLocationInFileProvider extends DefaultLocationInFileProvider } protected ITextRegion getNodeTextRegion(Node node, RegionDescription query) { - if (ProblemUtil.isUniqueNode(node)) { + if (ProblemUtil.isIndividualNode(node)) { return super.doGetTextRegion(node, query); } if (ProblemUtil.isNewNode(node)) { diff --git a/language/src/main/java/tools/refinery/language/resource/ProblemResourceDescriptionStrategy.java b/language/src/main/java/tools/refinery/language/resource/ProblemResourceDescriptionStrategy.java index e745b6a5..f86ebd38 100644 --- a/language/src/main/java/tools/refinery/language/resource/ProblemResourceDescriptionStrategy.java +++ b/language/src/main/java/tools/refinery/language/resource/ProblemResourceDescriptionStrategy.java @@ -83,7 +83,7 @@ public class ProblemResourceDescriptionStrategy extends DefaultResourceDescripti } if (eObject instanceof Node node) { // Only enum literals and new nodes are visible across problem files. - return ProblemUtil.isUniqueNode(node) || ProblemUtil.isNewNode(node); + return ProblemUtil.isIndividualNode(node) || ProblemUtil.isNewNode(node); } return true; } diff --git a/language/src/main/java/tools/refinery/language/validation/ProblemValidator.java b/language/src/main/java/tools/refinery/language/validation/ProblemValidator.java index dfd386f5..3c10d39e 100644 --- a/language/src/main/java/tools/refinery/language/validation/ProblemValidator.java +++ b/language/src/main/java/tools/refinery/language/validation/ProblemValidator.java @@ -27,7 +27,7 @@ public class ProblemValidator extends AbstractProblemValidator { public static final String SINGLETON_VARIABLE_ISSUE = ISSUE_PREFIX + "SINGLETON_VARIABLE"; - public static final String NON_UNIQUE_NODE_ISSUE = ISSUE_PREFIX + "NON_UNIQUE_NODE"; + public static final String NON_INDIVIDUAL_NODE_ISSUE = ISSUE_PREFIX + "NON_INDIVIDUAL_NODE"; @Inject private ReferenceCounter referenceCounter; @@ -51,12 +51,12 @@ public class ProblemValidator extends AbstractProblemValidator { @Check public void checkNonUniqueNode(VariableOrNodeArgument argument) { var variableOrNode = argument.getVariableOrNode(); - if (variableOrNode instanceof Node node && !ProblemUtil.isUniqueNode(node)) { + if (variableOrNode instanceof Node node && !ProblemUtil.isIndividualNode(node)) { var name = node.getName(); - var message = "Only unique nodes can be referenced in predicates. Mark '%s' as unique with the declaration 'unique %s.'" + var message = "Only individual nodes can be referenced in predicates. Mark '%s' as individual with the declaration 'individual %s.'" .formatted(name, name); error(message, argument, ProblemPackage.Literals.VARIABLE_OR_NODE_ARGUMENT__VARIABLE_OR_NODE, - INSIGNIFICANT_INDEX, NON_UNIQUE_NODE_ISSUE); + INSIGNIFICANT_INDEX, NON_INDIVIDUAL_NODE_ISSUE); } } } diff --git a/language/src/test/java/tools/refinery/language/tests/ProblemParsingTest.xtend b/language/src/test/java/tools/refinery/language/tests/ProblemParsingTest.xtend index 99cf0a86..9e357529 100644 --- a/language/src/test/java/tools/refinery/language/tests/ProblemParsingTest.xtend +++ b/language/src/test/java/tools/refinery/language/tests/ProblemParsingTest.xtend @@ -46,7 +46,7 @@ class ProblemParsingTest { error invalidTaxStatus(Person p) <-> taxStatus(p, child), children(p, _q). - unique family. + individual family. Family(family). members(family, anne): true. members(family, bob). diff --git a/language/src/test/java/tools/refinery/language/tests/scoping/NodeScopingTest.xtend b/language/src/test/java/tools/refinery/language/tests/scoping/NodeScopingTest.xtend index 5ff7a2c9..5f669847 100644 --- a/language/src/test/java/tools/refinery/language/tests/scoping/NodeScopingTest.xtend +++ b/language/src/test/java/tools/refinery/language/tests/scoping/NodeScopingTest.xtend @@ -77,50 +77,50 @@ class NodeScopingTest { } @ParameterizedTest - @MethodSource("uniqueNodeReferenceSource") - def void uniqueNodeInAssertionTest(String qualifiedNamePrefix, boolean namedProblem) { + @MethodSource("individualNodeReferenceSource") + def void individualNodeInAssertionTest(String qualifiedNamePrefix, boolean namedProblem) { val it = parseHelper.parse(''' «IF namedProblem»problem test.«ENDIF» - unique a, b. + individual a, b. pred predicate(node x, node y) <-> node(x). predicate(«qualifiedNamePrefix»a, «qualifiedNamePrefix»a). ?predicate(«qualifiedNamePrefix»a, «qualifiedNamePrefix»b). ''') assertThat(errors, empty) assertThat(nodeNames, empty) - assertThat(assertion(0).arg(0).node, equalTo(uniqueNode('a'))) - assertThat(assertion(0).arg(1).node, equalTo(uniqueNode('a'))) - assertThat(assertion(1).arg(0).node, equalTo(uniqueNode('a'))) - assertThat(assertion(1).arg(1).node, equalTo(uniqueNode('b'))) + assertThat(assertion(0).arg(0).node, equalTo(individualNode('a'))) + assertThat(assertion(0).arg(1).node, equalTo(individualNode('a'))) + assertThat(assertion(1).arg(0).node, equalTo(individualNode('a'))) + assertThat(assertion(1).arg(1).node, equalTo(individualNode('b'))) } @ParameterizedTest - @MethodSource("uniqueNodeReferenceSource") - def void uniqueNodeInNodeValueAssertionTest(String qualifiedNamePrefix, boolean namedProblem) { + @MethodSource("individualNodeReferenceSource") + def void individualNodeInNodeValueAssertionTest(String qualifiedNamePrefix, boolean namedProblem) { val it = parseHelper.parse(''' «IF namedProblem»problem test.«ENDIF» - unique a. + individual a. «qualifiedNamePrefix»a: 16. ''') assertThat(errors, empty) assertThat(nodeNames, empty) - assertThat(nodeValueAssertion(0).node, equalTo(uniqueNode('a'))) + assertThat(nodeValueAssertion(0).node, equalTo(individualNode('a'))) } @ParameterizedTest - @MethodSource("uniqueNodeReferenceSource") - def void uniqueNodeInPredicateTest(String qualifiedNamePrefix, boolean namedProblem) { + @MethodSource("individualNodeReferenceSource") + def void individualNodeInPredicateTest(String qualifiedNamePrefix, boolean namedProblem) { val it = parseHelper.parse(''' «IF namedProblem»problem test.«ENDIF» - unique b. + individual b. pred predicate(node a) <-> node(«qualifiedNamePrefix»b). ''') assertThat(errors, empty) assertThat(nodeNames, empty) - assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(uniqueNode("b"))) + assertThat(pred("predicate").conj(0).lit(0).arg(0).node, equalTo(individualNode("b"))) } - static def uniqueNodeReferenceSource() { + static def individualNodeReferenceSource() { Stream.of( Arguments.of("", false), Arguments.of("", true), -- cgit v1.2.3-54-g00ecf