Thanks Marshall! Actually, now that you say it, I knew it all...
For a bit, I had actually thought to have missed out on a significant part of the framework :) Cheers, -- Richard > On 30.11.2015, at 17:10, Marshall Schor <[email protected]> wrote: > > This also initially confused me... > > There are two different categories of APIs used in UIMA pipelines. One of > these > is for "component" writers - these are people who implement components > (usually > these are usually Annotators, but may also be things like Cas Consumers, Cas > Multipliers, etc.) which implement a standard set of APIs for components. For > example, Annotators implement the "process" method which takes a CAS and works > on it. Each component implements a particular lifecycle, and handles one or > more CASs. > > Analysis Engines represent UIMA pipelines, usually made up of multiple > components, possibly in hierarchies, arranged in some kind of a flow. The > pipelines, at the bottom of any aggregation hierarchy is composed of the the > above "components". > > Analysis Engines are created using produceAnalysisEngine calls, and then fed > one > or more CASes to process. The APIs for Analysis Engines can be thought of as > UIMA Application APIs. > > The XML descriptors, which describe which components to use, how they are put > together, configuration parameters, and other meta information, are associated > with Analysis Engines. > > In the tutorial book, > http://uima.apache.org/d/uimaj-current/tutorials_and_users_guides.html , > Chapter 1 is more about developing components (called Annotators), while > chapter > 3 is more about topics relating to Analysis Engines. > > Annotators, Cas Multipliers, Collection Readers, and Cas Consumers typically > inherit from Cas/JCasAnnotator_ImplBase, which eventually inherits from > AnalysisComponent. > > HTH. -Marshall > > On 11/29/2015 5:25 AM, Richard Eckart de Castilho wrote: >> Hi all, >> >> this post [1] on Stackoverflow brought up a question I couldn't answer: >> >> What is the difference between AnalysisComponent and AnalysisEngine? >> >> Looking at the inheritance hierarchy of AnalysisComponent, it appears that >> it is used in the UIMA SDK examples to implement components. >> >> But I've never seen that being used anywhere else. E.g. we implemented >> uimaFIT on top of AnalysisEngine. >> >> So what's the difference and when should one be used and when the other? >> >> Cheers, >> >> -- Richard >> >> [1] >> http://stackoverflow.com/questions/33973273/how-are-you-supposed-to-use-the-dkpro-libraries-with-uima-ruta >> >> >
