Author: pkluegl Date: Wed Jan 16 11:45:02 2019 New Revision: 1851430 URL: http://svn.apache.org/viewvc?rev=1851430&view=rev Log: no jira - merge ruta v2 to ruta v3
Added: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/VerbalizerTest.java uima/uv3/ruta-v3/trunk/ruta-core/TypeSystem.xml uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaProcessRuntimeException.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanAnnotationExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanAnnotationListExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaOptionalRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/utils/XmlUtils.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/apache/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/apache/uima/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/apache/uima/ruta/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/apache/uima/ruta/seed/ uima/uv3/ruta-v3/trunk/ruta-core/src/main/jflex/org/apache/uima/ruta/seed/SeedLexer.flex uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/LabelAtActionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/DummyAnnotator.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/DummySeeder.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/MultipleSeedersTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/TestRutaInferenceVisitor.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/string/ uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/string/StringSubtypeAllowedValuesTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/resource/ uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/resource/CSVTableTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RutaOptionalRuleElementTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTest.ruta uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTest.txt uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestEngine.xml uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/action/ConfigureTestTypeSystem.xml uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/resource/ uima/uv3/ruta-v3/trunk/ruta-core/src/test/resources/org/apache/uima/ruta/resource/test_csvfile.csv uima/uv3/ruta-v3/trunk/ruta-parent/src/ uima/uv3/ruta-v3/trunk/ruta-parent/src/main/ uima/uv3/ruta-v3/trunk/ruta-parent/src/main/groovy/ uima/uv3/ruta-v3/trunk/ruta-parent/src/main/groovy/api-report.groovy Removed: uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/VariableCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/seed/SeedLexer.flex uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/seed/SeedLexer.java Modified: uima/uv3/ruta-v3/trunk/ruta-basic-type/src/main/java/org/apache/uima/ruta/type/RutaBasic.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/action/MarkTableReloadAction.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/BooleanOperationsExtension.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/ContainsBooleanFunction.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EndsWithBooleanFunction.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsBooleanFunction.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsIgnoreCaseBooleanFunction.java uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/StartsWithBooleanFunction.java uima/uv3/ruta-v3/trunk/ruta-core/pom.xml uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaLexer.g uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaConstants.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaEnvironment.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaScriptFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaStream.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractMarkAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/AbstractRutaAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/ActionFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/AddFilterTypeAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/AddRetainTypeAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/CallAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/ConfigureAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/CreateAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/ExecAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/FillAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/FilterTypeAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/GatherAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/GetFeatureAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkOnceAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/MarkTableAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveFilterTypeAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/RemoveRetainTypeAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/SetFeatureAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/ShiftAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/SplitAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/TransferAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/TrieAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/TrimAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/UnmarkAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/action/UnmarkAllAction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/AfterCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/BeforeCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ConditionFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ContainsCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ContextCountCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/CountCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/CurrentCountCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/EndsWithCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/FeatureCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ImplicitCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/InListCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/IsCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/LastCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/NearCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ParseCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/PartOfCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/PartOfNeqCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/PositionCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/RegExpCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/ScoreCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/StartsWithCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/TotalCountCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/condition/VoteCondition.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorBuilder.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/descriptor/RutaDescriptorFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/Ruta.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaEngine.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/RutaTestUtils.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/engine/StyleMapFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/AnnotationTypeExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/ExpressionFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/MatchReference.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanListFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/bool/BooleanStringExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/FeatureMatchExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/LazyFeature.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/feature/SimpleFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/number/NumberFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/number/NumberListFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/string/ComposedStringExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/string/RemoveFunction.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/string/StringFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/string/StringListFeatureExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/ITypeListExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/SimpleTypeExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeListVariableExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/expression/type/TypeVariableExpression.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/AnonymousWordList.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/CSVTable.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordList.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/MultiTreeWordListPersistence.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/RutaTable.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/resource/TreeWordList.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/AbstractRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/ComposedRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/ComposedRuleElementMatch.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/ConjunctRulesRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RegExpRule.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RuleApply.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaAnnotationTypeMatcher.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaLiteralMatcher.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaRule.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/RutaRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/AbstractRuleElementQuantifier.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxGreedy.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/MinMaxReluctant.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusGreedy.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/PlusReluctant.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionGreedy.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/QuestionReluctant.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/quantifier/StarGreedy.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/verbalize/ScriptVerbalizer.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/visitor/DebugInfoCollectorVisitor.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/visitor/DebugInfoFactory.java uima/uv3/ruta-v3/trunk/ruta-core/src/main/resources/org/apache/uima/ruta/engine/BasicEngine.xml uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/FeatureMatch1Test.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/ImportStatementsTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/LoadResourceFromClassPathTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/WSDictionaryTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ConfigureTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/CreateTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/ImplicitActionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/action/SplitTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ContainsTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/CountTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/FeatureTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ImplicitCondition1Test.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/condition/ImplicitCondition2Test.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/descriptor/GenerateDescriptorTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ParamVarTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/RutaEngineTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/engine/ThreeStackedScriptsVariableResetTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/AnnotationTypeExpressionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationFeatureExpressionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationLabelExpressionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/annotation/AnnotationVariableExpressionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/expression/resource/WordTableStringExpressionTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/InlinedRulesTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/MarkInGreedyComposedTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/RegExpRuleTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/SidestepInComposedTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/rule/WildCard2Test.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/seed/DefaultSeederTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/verbalizer/ActionVerbalizerTest.java uima/uv3/ruta-v3/trunk/ruta-core/src/test/java/org/apache/uima/ruta/verbalizer/ExpressionVerbalizerTest.java uima/uv3/ruta-v3/trunk/ruta-docbook/src/docbook/tools.ruta.language.syntax.xml uima/uv3/ruta-v3/trunk/ruta-docbook/src/docbook/tools.ruta.language.xml uima/uv3/ruta-v3/trunk/ruta-docbook/src/docbook/tools.ruta.overview.xml uima/uv3/ruta-v3/trunk/ruta-eclipse-update-site/pom.xml uima/uv3/ruta-v3/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/cde/utils/ConstraintXMLUtils.java uima/uv3/ruta-v3/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/check/XMLUtils.java uima/uv3/ruta-v3/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/explain/ExplainConstants.java uima/uv3/ruta-v3/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/explain/tree/ExplainTree.java uima/uv3/ruta-v3/trunk/ruta-ep-addons/src/main/java/org/apache/uima/ruta/query/ui/QueryActionHandler.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/formatter/RutaFormattedPrinter.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/ui/documentation/RutaPageFolder.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/ui/documentation/RutaPagesLocationsBlock.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/ui/editor/RutaEditor.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/LanguageCheckerVisitor.java uima/uv3/ruta-v3/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RuleElementLabelVisitor.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaLexer.g uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/core/RutaKeywordsManager.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/core/packages/DLTKRutaHelper.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/core/packages/PackagesManager.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/parser/ast/ComposedRuleElement.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/parser/ast/ExpressionFactory.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/parser/ast/RutaAction.java uima/uv3/ruta-v3/trunk/ruta-ep-ide/src/main/java/org/apache/uima/ruta/ide/parser/ast/RutaRuleElement.java uima/uv3/ruta-v3/trunk/ruta-parent/pom.xml uima/uv3/ruta-v3/trunk/ruta-typesystem/src/main/resources/org/apache/uima/ruta/engine/RutaInternalTypeSystem.xml Modified: uima/uv3/ruta-v3/trunk/ruta-basic-type/src/main/java/org/apache/uima/ruta/type/RutaBasic.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-basic-type/src/main/java/org/apache/uima/ruta/type/RutaBasic.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-basic-type/src/main/java/org/apache/uima/ruta/type/RutaBasic.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-basic-type/src/main/java/org/apache/uima/ruta/type/RutaBasic.java Wed Jan 16 11:45:02 2019 @@ -1,4 +1,21 @@ -/* First created by JCasGen Wed Apr 16 17:01:16 CEST 2008 */ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ package org.apache.uima.ruta.type; import java.lang.invoke.CallSite; Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/action/MarkTableReloadAction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/action/MarkTableReloadAction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/action/MarkTableReloadAction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/action/MarkTableReloadAction.java Wed Jan 16 11:45:02 2019 @@ -129,7 +129,7 @@ public class MarkTableReloadAction exten Logger.getLogger(this.getClass().getName()).info("Creating Table Word List from resource: " + tableNameValue); try { - table = new CSVTable(resource); + table = new CSVTable(resource, CSVTable.DEFAULT_CSV_SEPARATOR); } catch (IOException e) { Logger.getLogger(this.getClass().getName()).log(Level.SEVERE, "Unable to load CSV file: " + tableNameValue, e); } @@ -171,10 +171,10 @@ public class MarkTableReloadAction exten candidate = candidate.replaceFirst("[" + ignoreCharValue + "]", ""); } } - List<String> rowWhere = table.getRowWhere(index - 1, candidate); + List<String> rowWhere = table.getRowWhere(index - 1, candidate, false); if (rowWhere.isEmpty() && ignoreCaseValue && candidate.length() > ignoreLengthValue) { // TODO: does not cover all variants - rowWhere = table.getRowWhere(index - 1, candidate.toLowerCase()); + rowWhere = table.getRowWhere(index - 1, candidate, true); } FeatureStructure newFS = stream.getCas().createFS(type); if (newFS instanceof Annotation) { Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/BooleanOperationsExtension.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/BooleanOperationsExtension.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/BooleanOperationsExtension.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/BooleanOperationsExtension.java Wed Jan 16 11:45:02 2019 @@ -31,38 +31,39 @@ import org.apache.uima.ruta.verbalize.Ru public class BooleanOperationsExtension implements IRutaBooleanFunctionExtension { - private final String[] knownExtensions = new String[] { "contains", "endsWith", - "startsWith", "equals", "equalsIgnoreCase", "isEmpty" }; + private final String[] knownExtensions = new String[] { "contains", "endsWith", "startsWith", + "equals", "equalsIgnoreCase", "isEmpty" }; private final Class<?>[] extensions = new Class[] { ContainsBooleanFunction.class, - EndsWithBooleanFunction.class, StartsWithBooleanFunction.class, - EqualsBooleanFunction.class, EqualsIgnoreCaseBooleanFunction.class, - IsEmptyBooleanFunction.class }; + EndsWithBooleanFunction.class, StartsWithBooleanFunction.class, EqualsBooleanFunction.class, + EqualsIgnoreCaseBooleanFunction.class, IsEmptyBooleanFunction.class }; - - + @Override public String verbalize(RutaElement element, RutaVerbalizer verbalizer) { if (element instanceof ContainsBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((ContainsBooleanFunction) element).getExpr()) + ")"; + + verbalizer.verbalize(((ContainsBooleanFunction) element).getExpr()) + "," + + verbalizer.verbalize(((ContainsBooleanFunction) element).getContainsExpr()) + ")"; } else if (element instanceof EndsWithBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((EndsWithBooleanFunction) element).getExpr()) + ")"; - } - // - else if (element instanceof StartsWithBooleanFunction) { + + verbalizer.verbalize(((EndsWithBooleanFunction) element).getExpr()) + "," + + verbalizer.verbalize(((EndsWithBooleanFunction) element).getEndExpr()) + ")"; + } else if (element instanceof StartsWithBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((StartsWithBooleanFunction) element).getExpr()) + ")"; + + verbalizer.verbalize(((StartsWithBooleanFunction) element).getExpr()) + "," + + verbalizer.verbalize(((StartsWithBooleanFunction) element).getStartExpr()) + ")"; } else if (element instanceof EqualsBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((EqualsBooleanFunction) element).getExpr()) + ")"; + + verbalizer.verbalize(((EqualsBooleanFunction) element).getExpr()) + "," + + verbalizer.verbalize(((EqualsBooleanFunction) element).getCompareExpr()) + ")"; } else if (element instanceof EqualsIgnoreCaseBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((EqualsIgnoreCaseBooleanFunction) element).getExpr()) + ")"; + + verbalizer.verbalize(((EqualsIgnoreCaseBooleanFunction) element).getExpr()) + "," + + verbalizer.verbalize(((EqualsIgnoreCaseBooleanFunction) element).getCompareExpr()) + + ")"; } else if (element instanceof IsEmptyBooleanFunction) { return verbalizeName(element) + "(" - + verbalizer.verbalize(((IsEmptyBooleanFunction) element).getExpr()) - + ")"; + + verbalizer.verbalize(((IsEmptyBooleanFunction) element).getExpr()) + ")"; } // else { @@ -70,46 +71,44 @@ public class BooleanOperationsExtension } } - + @Override public String verbalizeName(RutaElement element) { - - if (element instanceof ContainsBooleanFunction) { + + if (element instanceof ContainsBooleanFunction) { return knownExtensions[0]; } - - else if (element instanceof EndsWithBooleanFunction) { + + else if (element instanceof EndsWithBooleanFunction) { return knownExtensions[1]; } - else if (element instanceof StartsWithBooleanFunction) { return knownExtensions[2]; } - + else if (element instanceof EqualsBooleanFunction) { return knownExtensions[3]; } - + else if (element instanceof EqualsIgnoreCaseBooleanFunction) { return knownExtensions[4]; } - + else if (element instanceof IsEmptyBooleanFunction) { return knownExtensions[5]; } - - - else { return "UnknownStringFunction"; } } + @Override public String[] getKnownExtensions() { return knownExtensions; } + @Override public Class<?>[] extensions() { return extensions; } @@ -117,41 +116,44 @@ public class BooleanOperationsExtension @Override public BooleanFunctionExpression createBooleanFunction(String name, List<RutaExpression> args) throws RutaParseException { - if(args ==null ){ - throw new RutaParseException("You have to specify at least 1 Argument to use these Functions !"); + if (args == null) { + throw new RutaParseException( + "You have to specify at least 1 Argument to use these Functions !"); } - + if (name.equals(knownExtensions[5])) { return new IsEmptyBooleanFunction((IStringExpression) args.get(0)); } - - if (args == null || args.size()<2) { - throw new RutaParseException("You have to specify at least 2 Arguments to use these Functions !"); + + if (args == null || args.size() < 2) { + throw new RutaParseException( + "You have to specify at least 2 Arguments to use these Functions !"); } if (name.equals(knownExtensions[0])) { - return new ContainsBooleanFunction((IStringExpression) args.get(0), (IStringExpression) args.get(1)); + return new ContainsBooleanFunction((IStringExpression) args.get(0), + (IStringExpression) args.get(1)); } else if (name.equals(knownExtensions[1])) { - return new EndsWithBooleanFunction((IStringExpression) args.get(0),(IStringExpression) args.get(1)); + return new EndsWithBooleanFunction((IStringExpression) args.get(0), + (IStringExpression) args.get(1)); } else if (name.equals(knownExtensions[2])) { - return new StartsWithBooleanFunction((IStringExpression) args.get(0),(IStringExpression) args.get(1)); + return new StartsWithBooleanFunction((IStringExpression) args.get(0), + (IStringExpression) args.get(1)); } - - if (name.equals(knownExtensions[3])) { - return new EqualsBooleanFunction((IStringExpression) args.get(0),(IStringExpression) args.get(1)); - } - else if (name.equals(knownExtensions[4])) { - return new EqualsIgnoreCaseBooleanFunction((IStringExpression) args.get(0),(IStringExpression) args.get(1)); + + if (name.equals(knownExtensions[3])) { + return new EqualsBooleanFunction((IStringExpression) args.get(0), + (IStringExpression) args.get(1)); + } else if (name.equals(knownExtensions[4])) { + return new EqualsIgnoreCaseBooleanFunction((IStringExpression) args.get(0), + (IStringExpression) args.get(1)); } - - + return null; } - - } Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/ContainsBooleanFunction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/ContainsBooleanFunction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/ContainsBooleanFunction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/ContainsBooleanFunction.java Wed Jan 16 11:45:02 2019 @@ -17,7 +17,6 @@ * under the License. */ - package org.apache.uima.ruta.string.bool; import org.apache.uima.ruta.RutaStream; @@ -26,29 +25,34 @@ import org.apache.uima.ruta.expression.s import org.apache.uima.ruta.rule.MatchContext; public class ContainsBooleanFunction extends BooleanFunctionExpression { - + private IStringExpression text; + private IStringExpression contains; - - public ContainsBooleanFunction(IStringExpression text, - IStringExpression contains) { + + public ContainsBooleanFunction(IStringExpression text, IStringExpression contains) { this.text = text; - this.contains =contains; + this.contains = contains; } public IStringExpression getExpr() { return text; } + public IStringExpression getContainsExpr() { + return contains; + } + @Override public boolean getBooleanValue(MatchContext context, RutaStream stream) { - -return text.getStringValue(context, stream).contains(contains.getStringValue(context, stream)); + + return text.getStringValue(context, stream).contains(contains.getStringValue(context, stream)); } @Override public String getStringValue(MatchContext context, RutaStream stream) { - Boolean isContained = text.getStringValue(context, stream).contains(contains.getStringValue(context, stream)); + Boolean isContained = text.getStringValue(context, stream) + .contains(contains.getStringValue(context, stream)); return isContained.toString(); } Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EndsWithBooleanFunction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EndsWithBooleanFunction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EndsWithBooleanFunction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EndsWithBooleanFunction.java Wed Jan 16 11:45:02 2019 @@ -17,7 +17,6 @@ * under the License. */ - package org.apache.uima.ruta.string.bool; import org.apache.uima.ruta.RutaStream; @@ -27,19 +26,23 @@ import org.apache.uima.ruta.rule.MatchCo public class EndsWithBooleanFunction extends BooleanFunctionExpression { private IStringExpression text; + private IStringExpression end; - - public EndsWithBooleanFunction(IStringExpression text, - IStringExpression end) { + + public EndsWithBooleanFunction(IStringExpression text, IStringExpression end) { this.text = text; this.end = end; - + } public IStringExpression getExpr() { return text; } + public IStringExpression getEndExpr() { + return end; + } + @Override public boolean getBooleanValue(MatchContext context, RutaStream stream) { return text.getStringValue(context, stream).endsWith(end.getStringValue(context, stream)); @@ -47,7 +50,8 @@ public class EndsWithBooleanFunction ext @Override public String getStringValue(MatchContext context, RutaStream stream) { - Boolean endsWith = text.getStringValue(context, stream).endsWith(end.getStringValue(context, stream)); + Boolean endsWith = text.getStringValue(context, stream) + .endsWith(end.getStringValue(context, stream)); return endsWith.toString(); } } Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsBooleanFunction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsBooleanFunction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsBooleanFunction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsBooleanFunction.java Wed Jan 16 11:45:02 2019 @@ -17,7 +17,6 @@ * under the License. */ - package org.apache.uima.ruta.string.bool; import org.apache.uima.ruta.RutaStream; @@ -26,13 +25,12 @@ import org.apache.uima.ruta.expression.s import org.apache.uima.ruta.rule.MatchContext; public class EqualsBooleanFunction extends BooleanFunctionExpression { - + private IStringExpression text; + private IStringExpression compare; - - - public EqualsBooleanFunction(IStringExpression text, - IStringExpression compare) { + + public EqualsBooleanFunction(IStringExpression text, IStringExpression compare) { this.text = text; this.compare = compare; } @@ -41,6 +39,10 @@ public class EqualsBooleanFunction exten return text; } + public IStringExpression getCompareExpr() { + return compare; + } + @Override public boolean getBooleanValue(MatchContext context, RutaStream stream) { return text.getStringValue(context, stream).equals(compare.getStringValue(context, stream)); @@ -48,7 +50,8 @@ public class EqualsBooleanFunction exten @Override public String getStringValue(MatchContext context, RutaStream stream) { - Boolean equals = text.getStringValue(context, stream).equals(compare.getStringValue(context, stream)); + Boolean equals = text.getStringValue(context, stream) + .equals(compare.getStringValue(context, stream)); return equals.toString(); } } Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsIgnoreCaseBooleanFunction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsIgnoreCaseBooleanFunction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsIgnoreCaseBooleanFunction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/EqualsIgnoreCaseBooleanFunction.java Wed Jan 16 11:45:02 2019 @@ -25,13 +25,12 @@ import org.apache.uima.ruta.expression.s import org.apache.uima.ruta.rule.MatchContext; public class EqualsIgnoreCaseBooleanFunction extends BooleanFunctionExpression { - + private IStringExpression text; + private IStringExpression compare; - - - public EqualsIgnoreCaseBooleanFunction(IStringExpression text, - IStringExpression compare) { + + public EqualsIgnoreCaseBooleanFunction(IStringExpression text, IStringExpression compare) { this.text = text; this.compare = compare; } @@ -40,14 +39,20 @@ public class EqualsIgnoreCaseBooleanFunc return text; } + public IStringExpression getCompareExpr() { + return compare; + } + @Override public boolean getBooleanValue(MatchContext context, RutaStream stream) { - return text.getStringValue(context, stream).equalsIgnoreCase(compare.getStringValue(context, stream)); + return text.getStringValue(context, stream) + .equalsIgnoreCase(compare.getStringValue(context, stream)); } @Override public String getStringValue(MatchContext context, RutaStream stream) { - Boolean equals = text.getStringValue(context, stream).equalsIgnoreCase(compare.getStringValue(context, stream)); + Boolean equals = text.getStringValue(context, stream) + .equalsIgnoreCase(compare.getStringValue(context, stream)); return equals.toString(); } } Modified: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/StartsWithBooleanFunction.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/StartsWithBooleanFunction.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/StartsWithBooleanFunction.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/main/java/org/apache/uima/ruta/string/bool/StartsWithBooleanFunction.java Wed Jan 16 11:45:02 2019 @@ -40,16 +40,19 @@ public class StartsWithBooleanFunction e return text; } + public IStringExpression getStartExpr() { + return start; + } + @Override public boolean getBooleanValue(MatchContext context, RutaStream stream) { - return text.getStringValue(context, stream).startsWith( - start.getStringValue(context, stream)); + return text.getStringValue(context, stream).startsWith(start.getStringValue(context, stream)); } @Override public String getStringValue(MatchContext context, RutaStream stream) { - Boolean endsWith = text.getStringValue(context, stream).startsWith( - start.getStringValue(context, stream)); + Boolean endsWith = text.getStringValue(context, stream) + .startsWith(start.getStringValue(context, stream)); return endsWith.toString(); } } Added: uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/VerbalizerTest.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/VerbalizerTest.java?rev=1851430&view=auto ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/VerbalizerTest.java (added) +++ uima/uv3/ruta-v3/trunk/ruta-core-ext/src/test/java/org/apache/uima/ruta/string/bool/VerbalizerTest.java Wed Jan 16 11:45:02 2019 @@ -0,0 +1,39 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.uima.ruta.string.bool; + +import org.apache.uima.ruta.expression.string.SimpleStringExpression; +import org.apache.uima.ruta.verbalize.RutaVerbalizer; +import org.junit.Assert; +import org.junit.Test; + +public class VerbalizerTest { + + @Test + public void test() { + ContainsBooleanFunction f = new ContainsBooleanFunction(new SimpleStringExpression("abc"), + new SimpleStringExpression("def")); + + BooleanOperationsExtension extension = new BooleanOperationsExtension(); + String verbalize = extension.verbalize(f, new RutaVerbalizer()); + + Assert.assertEquals("contains(\"abc\",\"def\")", verbalize); + } +} Added: uima/uv3/ruta-v3/trunk/ruta-core/TypeSystem.xml URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core/TypeSystem.xml?rev=1851430&view=auto ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core/TypeSystem.xml (added) +++ uima/uv3/ruta-v3/trunk/ruta-core/TypeSystem.xml Wed Jan 16 11:45:02 2019 @@ -0,0 +1,697 @@ +<?xml version="1.0" encoding="UTF-8"?> +<typeSystemDescription xmlns="http://uima.apache.org/resourceSpecifier"> + <types> + <typeDescription> + <name>org.apache.uima.T1</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T10</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T11</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T12</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T13</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T14</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T15</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T16</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T17</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T18</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T19</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T2</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T20</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T21</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T22</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T23</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T24</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T25</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T26</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T27</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T28</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T29</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T3</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T30</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T31</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T32</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T33</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T34</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T35</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T36</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T37</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T38</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T39</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T4</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T40</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T41</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T42</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T43</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T44</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T45</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T46</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T47</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T48</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T49</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T5</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T50</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T6</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T7</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T8</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.T9</name> + <description>Type for Testing</description> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.ALL</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.TokenSeed</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.AMP</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.ANY</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ALL</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.BREAK</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.WS</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.CAP</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.W</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.COLON</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.PM</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.COMMA</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.PM</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.CW</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.W</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugBlockApply</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.DebugRuleApply</supertypeName> + <features> + <featureDescription> + <name>innerApply</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugScriptApply</elementType> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugCreatedBy</name> + <description/> + <supertypeName>uima.cas.TOP</supertypeName> + <features> + <featureDescription> + <name>rule</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>annotation</name> + <description/> + <rangeTypeName>uima.tcas.Annotation</rangeTypeName> + </featureDescription> + <featureDescription> + <name>script</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>id</name> + <description/> + <rangeTypeName>uima.cas.Integer</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugEvaluatedCondition</name> + <description/> + <supertypeName>uima.cas.TOP</supertypeName> + <features> + <featureDescription> + <name>element</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>value</name> + <description/> + <rangeTypeName>uima.cas.Boolean</rangeTypeName> + </featureDescription> + <featureDescription> + <name>conditions</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugEvaluatedCondition</elementType> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugFailedRuleMatch</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.DebugRuleMatch</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugMatchedRuleMatch</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.DebugRuleMatch</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugRuleApply</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.DebugScriptApply</supertypeName> + <features> + <featureDescription> + <name>applied</name> + <description/> + <rangeTypeName>uima.cas.Integer</rangeTypeName> + </featureDescription> + <featureDescription> + <name>tried</name> + <description/> + <rangeTypeName>uima.cas.Integer</rangeTypeName> + </featureDescription> + <featureDescription> + <name>rules</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugRuleMatch</elementType> + </featureDescription> + <featureDescription> + <name>id</name> + <description/> + <rangeTypeName>uima.cas.Integer</rangeTypeName> + </featureDescription> + <featureDescription> + <name>script</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugRuleElementMatch</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ProfiledAnnotation</supertypeName> + <features> + <featureDescription> + <name>baseCondition</name> + <description/> + <rangeTypeName>org.apache.uima.ruta.type.DebugEvaluatedCondition</rangeTypeName> + </featureDescription> + <featureDescription> + <name>conditions</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugEvaluatedCondition</elementType> + </featureDescription> + <featureDescription> + <name>elements</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugRuleElementMatches</elementType> + <multipleReferencesAllowed>false</multipleReferencesAllowed> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugRuleElementMatches</name> + <description/> + <supertypeName>uima.cas.TOP</supertypeName> + <features> + <featureDescription> + <name>matches</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugRuleElementMatch</elementType> + </featureDescription> + <featureDescription> + <name>element</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>ruleAnchor</name> + <description/> + <rangeTypeName>uima.cas.Boolean</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugRuleMatch</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ProfiledAnnotation</supertypeName> + <features> + <featureDescription> + <name>elements</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugRuleElementMatches</elementType> + </featureDescription> + <featureDescription> + <name>matched</name> + <description/> + <rangeTypeName>uima.cas.Boolean</rangeTypeName> + </featureDescription> + <featureDescription> + <name>delegates</name> + <description/> + <rangeTypeName>uima.cas.FSArray</rangeTypeName> + <elementType>org.apache.uima.ruta.type.DebugScriptApply</elementType> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.DebugScriptApply</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ProfiledAnnotation</supertypeName> + <features> + <featureDescription> + <name>element</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>timestamp</name> + <description/> + <rangeTypeName>uima.cas.Long</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.EXCLAMATION</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.SENTENCEEND</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.EvalAnnotation</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + <features> + <featureDescription> + <name>original</name> + <description/> + <rangeTypeName>uima.tcas.Annotation</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.FalseNegative</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.EvalAnnotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.FalsePositive</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.EvalAnnotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.MARKUP</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ALL</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.NBSP</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.SPACE</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.NUM</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.PERIOD</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.SENTENCEEND</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.PM</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.ProfiledAnnotation</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + <features> + <featureDescription> + <name>time</name> + <description/> + <rangeTypeName>uima.cas.Long</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.QUESTION</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.SENTENCEEND</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.RutaAnnotation</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + <features> + <featureDescription> + <name>score</name> + <description/> + <rangeTypeName>uima.cas.Double</rangeTypeName> + </featureDescription> + <featureDescription> + <name>annotation</name> + <description/> + <rangeTypeName>uima.tcas.Annotation</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.RutaBasic</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + <features> + <featureDescription> + <name>replacement</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.RutaColoring</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + <features> + <featureDescription> + <name>bgColor</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>targetType</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>fgColor</name> + <description/> + <rangeTypeName>uima.cas.String</rangeTypeName> + </featureDescription> + <featureDescription> + <name>selected</name> + <description/> + <rangeTypeName>uima.cas.Boolean</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.RutaFrame</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.RutaOptional</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.SEMICOLON</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.PM</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.SENTENCEEND</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.PM</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.SPACE</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.WS</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.SPECIAL</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.SW</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.W</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.Statistics</name> + <description/> + <supertypeName>uima.cas.TOP</supertypeName> + <features> + <featureDescription> + <name>name</name> + <description/> + <rangeTypeName>uima.cas.StringArray</rangeTypeName> + </featureDescription> + <featureDescription> + <name>total</name> + <description/> + <rangeTypeName>uima.cas.DoubleArray</rangeTypeName> + </featureDescription> + <featureDescription> + <name>amount</name> + <description/> + <rangeTypeName>uima.cas.IntegerArray</rangeTypeName> + </featureDescription> + <featureDescription> + <name>part</name> + <description/> + <rangeTypeName>uima.cas.DoubleArray</rangeTypeName> + </featureDescription> + </features> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.TokenSeed</name> + <description/> + <supertypeName>uima.tcas.Annotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.TruePositive</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.EvalAnnotation</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.W</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + <typeDescription> + <name>org.apache.uima.ruta.type.WS</name> + <description/> + <supertypeName>org.apache.uima.ruta.type.ANY</supertypeName> + </typeDescription> + </types> +</typeSystemDescription> Modified: uima/uv3/ruta-v3/trunk/ruta-core/pom.xml URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core/pom.xml?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core/pom.xml (original) +++ uima/uv3/ruta-v3/trunk/ruta-core/pom.xml Wed Jan 16 11:45:02 2019 @@ -144,16 +144,46 @@ <exclude>src/test/resources/org/apache/uima/ruta/**/*.ruta</exclude> <!-- test data --> <exclude>src/test/resources/org/apache/uima/ruta/action/*.*</exclude> <!-- test data --> <exclude>src/test/resources/org/apache/uima/ruta/table2.csv</exclude> <!-- test data --> + <exclude>src/test/resources/org/apache/uima/ruta/resource/test_csvfile.csv</exclude> <!-- test data --> <exclude>src/test/resources/org/apache/uima/ruta/engine/*.html</exclude> <!-- test data --> <exclude>src/test/resources/META-INF/org.apache.uima.fit/types.txt</exclude> <!-- test data --> <exclude>src/main/resources/META-INF/org.apache.uima.fit/*.txt</exclude> <exclude>issuesFixed/**</exclude> <!-- generated --> + <exclude>input/**</exclude> <!-- temp test data --> + <exclude>TypeSystem.xml</exclude> <!-- temp test data --> <exclude>marker-file-identifying-*</exclude> </excludes> </configuration> </execution> </executions> </plugin> + <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.--> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <version>1.0.0</version> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId>de.jflex</groupId> + <artifactId> + jflex-maven-plugin + </artifactId> + <versionRange>[1.6.1,)</versionRange> + <goals> + <goal>generate</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore /> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> </plugins> </pluginManagement> <resources> @@ -193,6 +223,38 @@ </source> </sources> </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>de.jflex</groupId> + <artifactId>jflex-maven-plugin</artifactId> + <version>1.6.1</version> + <executions> + <execution> + <goals> + <goal>generate</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>add-source</id> + <phase>generate-sources</phase> + <goals> + <goal>add-source</goal> + </goals> + <configuration> + <sources> + <source>${basedir}/target/generated-sources/jflex + </source> + </sources> + </configuration> </execution> </executions> </plugin> Modified: uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaLexer.g URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaLexer.g?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaLexer.g (original) +++ uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaLexer.g Wed Jan 16 11:45:02 2019 @@ -389,6 +389,8 @@ ADDRESS_PREFIX STARTANCHOR : '@'; + +OPTIONAL : '_' ; HexLiteral : '0' ('x'|'X') HexDigit+ IntegerTypeSuffix? ; @@ -548,6 +550,8 @@ GREATEREQUAL : '>=' ; WILDCARD : '#' ; + + WS : (' '|'\r'|'\t'|'\u000C'|'\n') {$channel=HIDDEN;} ; Modified: uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g (original) +++ uima/uv3/ruta-v3/trunk/ruta-core/src/main/antlr3/org/apache/uima/ruta/parser/RutaParser.g Wed Jan 16 11:45:02 2019 @@ -165,23 +165,23 @@ public void setExternalFactory(RutaExter } int line = e.line; String text = e.token.getText(); - + String name = StringUtils.isBlank(moduleName) ? "unknown script" : moduleName; if (e instanceof NoViableAltException) { NoViableAltException nvae = (NoViableAltException) e; - String msg = "Error in "+moduleName+", line " + nvae.line + ", \"" + text + "\": found no viable alternative"; + String msg = "Error in "+name+", line " + nvae.line + ", \"" + text + "\": found no viable alternative"; emitErrorMessage(msg); } else if (e instanceof MismatchedTokenException) { MismatchedTokenException mte = (MismatchedTokenException) e; int expectedInt = mte.expecting; String stringExpected = expectedInt < 0 ? "'none'" : getTokenNames()[expectedInt]; - String msg = "Error in "+moduleName+", line " + line + ", \"" + text + "\": expected " + stringExpected + String msg = "Error in "+name+", line " + line + ", \"" + text + "\": expected " + stringExpected + ", but found " + stringFound; emitErrorMessage(msg); } else if (e instanceof MissingTokenException) { MissingTokenException mte = (MissingTokenException) e; int missingType = mte.getMissingType(); String stringMissing = getTokenNames()[missingType]; - String msg = "Error in "+moduleName+", line " + line + ", \"" + text + "\": missing " + stringMissing + String msg = "Error in "+name+", line " + line + ", \"" + text + "\": missing " + stringMissing + ", but found " + stringFound; emitErrorMessage(msg); } else { @@ -249,14 +249,23 @@ public void setExternalFactory(RutaExter } String resolvedType = name; if (!name.contains(".")) { - resolvedType = namespace + "." + moduleName + "." + name; + if(StringUtils.isBlank(moduleName)) { + resolvedType = namespace + "." + name; + } else { + resolvedType = namespace + "." + moduleName + "." + name; + } } parent.getEnvironment().declareType(resolvedType); if(descInfo != null) { name = parent.getNamespace() + "." + name.trim(); String descriptionString = null; if(StringUtils.isBlank(namespace)) { - descriptionString = "Type defined in " + moduleName; + if(StringUtils.isBlank(moduleName)) { + descriptionString = "Type defined in unknown script."; + } else { + descriptionString = "Type defined in " + moduleName; + } + } else { descriptionString = "Type defined in " + parent.getNamespace(); } @@ -989,25 +998,27 @@ String label = null; re1 = ruleElementAnnotationType[container] {re = re1;} | re2 = ruleElementLiteral[container] {re = re2;} | (ruleElementComposed[null])=>re3 = ruleElementComposed[container] {re = re3;} - | (ruleElementWildCard[null])=> re5 = ruleElementWildCard[container] {re = re5;} + | (ruleElementWildCard[null])=> re4 = ruleElementWildCard[container] {re = re4;} + | (ruleElementOptional[null])=> re5 = ruleElementOptional[container] {re = re5;} ) { re.setLabel(label); re.setStartAnchor(start != null); } (t = (THEN2) + {innerConditionRules = new ArrayList<RutaStatement>();} LCURLY (rule = simpleStatement {innerConditionRules.add(rule);})+ RCURLY - {re.setInlinedConditionRules(innerConditionRules);} - - )? - (t = (THEN) + {re.addInlinedConditionRules(innerConditionRules);} + )* + (t = (THEN) + {innerActionRules = new ArrayList<RutaStatement>();} LCURLY (rule = simpleStatement {innerActionRules.add(rule);})+ RCURLY - {re.setInlinedActionRules(innerActionRules);} - )? + {re.addInlinedActionRules(innerActionRules);} + )* ; ruleElementWildCard [RuleElementContainer container] returns [AbstractRuleElement re = null] @@ -1026,6 +1037,21 @@ ruleElementWildCard [RuleElementContaine } ; +ruleElementOptional [RuleElementContainer container] returns [AbstractRuleElement re = null] + : + + w = OPTIONAL + {re = factory.createOptionalRuleElement(null, null, container, $blockDeclaration::env);} + (LCURLY c = conditions? (THEN a = actions)? RCURLY)? + { + if(c!= null) { + re.setConditions(c); + } + if(a != null) { + re.setActions(a); + } + } + ; ruleElementComposed [RuleElementContainer container] returns [ComposedRuleElement re = null] @@ -1712,7 +1738,11 @@ conditionSize returns [AbstractRutaCondi ; action returns [AbstractRutaAction result = null] +@init{ + String label = null; +} : + (l = Identifier {label = l.getText();} COLON)? ( a = actionColor | a = actionDel @@ -1764,7 +1794,11 @@ action returns [AbstractRutaAction resu | (typeExpression)=> te = typeExpression {a = actionFactory.createAction(te);} // | a = variableAction - ) {result = a;} + ) + { + result = a; + result.setLabel(label); + } ; @@ -2759,6 +2793,8 @@ composedBooleanExpression returns [IBool (e2 = booleanCompare)=> e2 = booleanCompare {expr = e2;} | (bne = booleanNumberExpression)=> bne = booleanNumberExpression{expr = bne;} | (bse = booleanStringExpression)=> bse = booleanStringExpression{expr = bse;} + | (bale = booleanAnnotationListExpression)=> bale = booleanAnnotationListExpression{expr = bale;} + | (bae = booleanAnnotationExpression)=> bae = booleanAnnotationExpression{expr = bae;} | (bte = booleanTypeExpression)=> bte = booleanTypeExpression{expr = bte;} | e1 = booleanFunction {expr = e1;} | LPAREN ep = booleanExpression RPAREN {expr = ep;} @@ -2807,6 +2843,23 @@ booleanTypeExpression returns [IBoolea e2 = typeExpression {expr = expressionFactory.createBooleanTypeExpression(e1,op,e2);} ; + +booleanAnnotationExpression returns [IBooleanExpression expr = null] + : + e1 = annotationExpression + op = (EQUAL | NOTEQUAL) + e2 = annotationExpression + {expr = expressionFactory.createBooleanAnnotationExpression(e1,op,e2);} + ; + +booleanAnnotationListExpression returns [IBooleanExpression expr = null] + : + e1 = annotationListExpression + op = (EQUAL | NOTEQUAL) + e2 = annotationListExpression + {expr = expressionFactory.createBooleanAnnotationListExpression(e1,op,e2);} + ; + booleanStringExpression returns [IBooleanExpression expr = null] : e1 = stringExpression Modified: uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaConstants.java URL: http://svn.apache.org/viewvc/uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaConstants.java?rev=1851430&r1=1851429&r2=1851430&view=diff ============================================================================== --- uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaConstants.java (original) +++ uima/uv3/ruta-v3/trunk/ruta-core/src/main/java/org/apache/uima/ruta/RutaConstants.java Wed Jan 16 11:45:02 2019 @@ -19,11 +19,15 @@ package org.apache.uima.ruta; public class RutaConstants { - + + public static final String ANONYMOUS_SCRIPT = "Anonymous"; + public static final String RUTA_VARIABLE_ANNOTATION = "ANNOTATION"; - + public static final String RUTA_VARIABLE_ANNOTATION_LIST = "ANNOTATIONLIST"; public static final String RUTA_VARIABLE_TYPE = "TYPE"; + public static final String RUTA_VARIABLE_TYPE_LIST = "TYPELIST"; + }