Does it work if you don't use PEARs?

-Marshall

On 6/15/2010 4:25 AM, Andrea Turbati wrote:
> Hi all,
> I'm a newbie and I'm trying to build an aggregate AE from two (very
> simple) AE.
> On this guide
> http://uima.apache.org/downloads/releaseDocs/2.3.0-incubating/docs/pdf/tutorials_and_users_guides.pdf
> on page  49 (55) there is an example of an aggregate AE Descriptor, so
> I've copied and this is my AAE descriptor:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <analysisEngineDescription
> xmlns="http://uima.apache.org/resourceSpecifier";>
> <frameworkImplementation>org.apache.uima.java</frameworkImplementation>
> <primitive>false</primitive>
> <delegateAnalysisEngineSpecifiers>
> <delegateAnalysisEngine key="SimpleName">
> <import location="./SimpleName/SimpleName_pear.xml"/>
> </delegateAnalysisEngine>
> <delegateAnalysisEngine key="EmailRecognizer">
> <import location="./EmailRecognizer/EmailRecognizer_pear.xml" />
> </delegateAnalysisEngine>
> </delegateAnalysisEngineSpecifiers>
> <analysisEngineMetaData>
> <name>Aggregate AE - Room Number and DateTime Annotators</name>
> <description>Detects Room Numbers, Dates, and Times</description>
> <flowConstraints>
> <fixedFlow>
> <node>SimpleName</node>
> <node>EmailRecognizer</node>
> </fixedFlow>
> </flowConstraints>
> </analysisEngineMetaData>
> </analysisEngineDescription>
>
> And this is the java code I'm using:
>
> ...
>             pearDir = new File(aggregateAEPath).toURI();
>             browser = new PackageBrowser(new File(pearDir.getPath()));
>             in = new XMLInputSource(aggregateAEFilePath);
>             specifier =
> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>             resManager = UIMAFramework.newDefaultResourceManager();
>            
> resManager.setExtensionClassPath(aeSimpleNamePath+"/bin",true); //
> TODO check if this is necessary
>             resManager.setExtensionClassPath(aeEmailPath+"/bin",true);
> // TODO check if this is necessary
>             ae = UIMAFramework.produceAnalysisEngine(specifier,
> resManager, null);
>             ae.setConfigParameterValue("Encoding", "UTF-8");
>             annotCas = ae.newJCas();
>             annotCas.setDocumentText(textToBeAnnotatate);
>             annotCas.setDocumentLanguage("it");
>             ae.process(annotCas);
>             FSIndex indexAnnotations = annotCas.getAnnotationIndex();
>             Iterator<Annotation> annoIt = indexAnnotations.iterator();
>             while(annoIt.hasNext()){
>                 Annotation annotation = annoIt.next();
>                 String text = annotation.getCoveredText();
>                 int begin = annotation.getBegin();
>                 int end = annotation.getEnd();
>                 String type = annotation.getType().getName();
>                 System.out.println("text: "+text+"\tbegin:
> "+begin+"\tend:"+end+"\ttype:"+type);
>             }
> ...
>
> The problem is that the last System.out.println prints just all the
> input text and no annoation, while if I use a very similar code with
> the two simple AE I get all the annotation.
>
> What am I doing wrong?
>
> Thanks,
>
> Andrea
>

Reply via email to