It is different. In an aggregate, all AEs operate on the same CAS. There are cases though, where an AE wants to call out to another AE to do some sub-processing on data that may not even be in the original pipeline CAS.
Often such scenarios can also be solved by adding the new data to another view in the CAS and apply subsequent processing steps to all views. But then you have to juggle around with views, which causes all kinds of other inconveniences. While I can perfectly understand that people want to solve this within the UIMA framework, I don't see a good way of doing that right now. Currently, I prefer to solve such situations outside of the UIMA framework and have started the DKPro Lab [1] framework to deal with cases where I need to run multiple pipelines that interact with each other. But there might be ways the UIMA framework itself can better be exploited to address such scenarios. -- Richard [1] http://code.google.com/p/dkpro-lab/ Am 10.06.2012 um 20:32 schrieb Roeder, Chris: > How is this different from what aggregates are for? > -Chris > ________________________________________ > From: Richard Eckart de Castilho [[email protected]] > Sent: Friday, June 08, 2012 3:14 AM > To: <[email protected]> > Subject: Re: AW: Calling an annotator from another annotator > > Am 08.06.2012 um 10:50 schrieb <[email protected]> > <[email protected]>: > >> At the moment, uimaFIT doesn't have explicit support for injecting >> AnalysisEngineDescriptors directly as parameters. One could imagine >> something like this: >> >> createPrimitiveDescriptor(OuterAE.class, >> OuterAE.PARAM_NAME, "outer", >> OuterAE.PARAM_INNER_AE, createPrimitiveDescriptor(InnerAE.class, >> PARAM_NAME, "inner"); > > I've been thinking a bit more about this part. It looks intriguingly simple, > but its not as straight as with the external resources. When a analysis > engine descriptor is created with uimaFIT factories, I want it to be > self-contained. Unfortunately, there is no good place where auxiliary > analysis engine descriptors could be stored in an AnalysisEngineDescription, > in particular a place from where the data could be accessed and injected into > a component. The straight-forward way of just serializing the descriptor into > XML and passing that as a String parameter would work, but it's so ugly that > I don't even want to consider implementing that... just imagine what would > happen if that descriptor is opened in the Eclipse component editor. > > I've opened an uimaFIT issue though - just in case. > > http://code.google.com/p/uimafit/issues/detail?id=124 > > -- Richard -- ------------------------------------------------------------------- Richard Eckart de Castilho Technical Lead Ubiquitous Knowledge Processing Lab (UKP-TUD) FB 20 Computer Science Department Technische Universität Darmstadt Hochschulstr. 10, D-64289 Darmstadt, Germany phone [+49] (0)6151 16-7477, fax -5455, room S2/02/B117 [email protected] www.ukp.tu-darmstadt.de Web Research at TU Darmstadt (WeRC) www.werc.tu-darmstadt.de -------------------------------------------------------------------
