Search code examples
nlpuima

What exactly is the difference between AnalysisEngine and CAS Consumer?


I'm learning UIMA, and I can create basic analysis engines and get results. But What I'm finding it difficult to understand is use of CAS consumers. At the same time I want to know how different it is from AnalysisEngine? From many examples I have seen, CAS consumer is not really needed(?). Is CAS consumer is very important from big applications point of view or can we do without it?


Solution

  • There is no difference between them in the current version. Historically, a CASConsumer would tipically not modify the CAS, but only use the data existing in the CAS (previously added by an Analysis Engine) to aggregate it/prepare it for use in other systems, e.g., ingestion in databases.

    In the current version, it is recommended that CASConsumers be replaced by Analysis Engine components.