Uploaded image for project: 'UIMA'
  1. UIMA
  2. UIMA-4480

Cannot declar new type in Java code to apply Ruta rules

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.2.1ruta
    • Fix Version/s: 2.3.1ruta
    • Component/s: Ruta
    • Labels:
      None

      Description

      I used Java code to apply UIMA Ruta rules, but with declare statement, ruta cannot recognize the new created annotation type.

      Here is the code I used:
      String rutaStr2 = "DECLARE person; W

      {REGEXP(\"Patient\") -> MARK(person)}

      ;";

      Ruta.apply( aJCas.getCas(), rutaStr2 );

      The error is like:
      Jun 24, 2015 3:01:07 PM org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl callAnalysisComponentProcess(417)
      SEVERE: Exception occurred
      org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator processing failed.
      at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:496)
      at org.apache.uima.analysis_component.JCasAnnotator_ImplBase.process(JCasAnnotator_ImplBase.java:48)
      at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:385)
      at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:309)
      at org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
      at org.apache.uima.ruta.engine.Ruta.apply(Ruta.java:75)
      at org.apache.uima.ruta.engine.Ruta.apply(Ruta.java:83)
      at edu.uth.clamp.nlp.attr.ast.LinearAssertion.main(LinearAssertion.java:610)
      Caused by: java.lang.IllegalArgumentException: Not able to resolve type: animal
      at org.apache.uima.ruta.expression.type.SimpleTypeExpression.getType(SimpleTypeExpression.java:47)
      at org.apache.uima.ruta.action.AbstractMarkAction.createAnnotation(AbstractMarkAction.java:42)
      at org.apache.uima.ruta.action.MarkAction.execute(MarkAction.java:57)
      at org.apache.uima.ruta.rule.AbstractRuleElement.apply(AbstractRuleElement.java:130)
      at org.apache.uima.ruta.rule.RuleElementCaretaker.applyRuleElements(RuleElementCaretaker.java:111)
      at org.apache.uima.ruta.rule.ComposedRuleElement.applyRuleElements(ComposedRuleElement.java:559)
      at org.apache.uima.ruta.rule.AbstractRuleElement.doneMatching(AbstractRuleElement.java:84)
      at org.apache.uima.ruta.rule.ComposedRuleElement.fallback(ComposedRuleElement.java:480)
      at org.apache.uima.ruta.rule.ComposedRuleElement.fallbackContinue(ComposedRuleElement.java:384)
      at org.apache.uima.ruta.rule.RutaRuleElement.startMatch(RutaRuleElement.java:106)
      at org.apache.uima.ruta.rule.ComposedRuleElement.startMatch(ComposedRuleElement.java:73)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:47)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:40)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:29)
      at org.apache.uima.ruta.RutaScriptBlock.apply(RutaScriptBlock.java:63)
      at org.apache.uima.ruta.RutaModule.apply(RutaModule.java:48)
      at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:494)
      ... 7 more

      org.apache.uima.analysis_engine.AnalysisEngineProcessException: Annotator processing failed.
      at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:496)
      at org.apache.uima.analysis_component.JCasAnnotator_ImplBase.process(JCasAnnotator_ImplBase.java:48)
      at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.callAnalysisComponentProcess(PrimitiveAnalysisEngine_impl.java:385)
      at org.apache.uima.analysis_engine.impl.PrimitiveAnalysisEngine_impl.processAndOutputNewCASes(PrimitiveAnalysisEngine_impl.java:309)
      at org.apache.uima.analysis_engine.impl.AnalysisEngineImplBase.process(AnalysisEngineImplBase.java:267)
      at org.apache.uima.ruta.engine.Ruta.apply(Ruta.java:75)
      at org.apache.uima.ruta.engine.Ruta.apply(Ruta.java:83)
      at edu.uth.clamp.nlp.attr.ast.LinearAssertion.main(LinearAssertion.java:610)
      Caused by: java.lang.IllegalArgumentException: Not able to resolve type: animal
      at org.apache.uima.ruta.expression.type.SimpleTypeExpression.getType(SimpleTypeExpression.java:47)
      at org.apache.uima.ruta.action.AbstractMarkAction.createAnnotation(AbstractMarkAction.java:42)
      at org.apache.uima.ruta.action.MarkAction.execute(MarkAction.java:57)
      at org.apache.uima.ruta.rule.AbstractRuleElement.apply(AbstractRuleElement.java:130)
      at org.apache.uima.ruta.rule.RuleElementCaretaker.applyRuleElements(RuleElementCaretaker.java:111)
      at org.apache.uima.ruta.rule.ComposedRuleElement.applyRuleElements(ComposedRuleElement.java:559)
      at org.apache.uima.ruta.rule.AbstractRuleElement.doneMatching(AbstractRuleElement.java:84)
      at org.apache.uima.ruta.rule.ComposedRuleElement.fallback(ComposedRuleElement.java:480)
      at org.apache.uima.ruta.rule.ComposedRuleElement.fallbackContinue(ComposedRuleElement.java:384)
      at org.apache.uima.ruta.rule.RutaRuleElement.startMatch(RutaRuleElement.java:106)
      at org.apache.uima.ruta.rule.ComposedRuleElement.startMatch(ComposedRuleElement.java:73)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:47)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:40)
      at org.apache.uima.ruta.rule.RutaRule.apply(RutaRule.java:29)
      at org.apache.uima.ruta.RutaScriptBlock.apply(RutaScriptBlock.java:63)
      at org.apache.uima.ruta.RutaModule.apply(RutaModule.java:48)
      at org.apache.uima.ruta.engine.RutaEngine.process(RutaEngine.java:494)
      ... 7 more

        Attachments

          Activity

            People

            • Assignee:
              pkluegl Peter Klügl
              Reporter:
              jmlongriver Min Jiang
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: