Hello,

often annotators are more flexible and reusable than its assumed in UIMA. The configuration is static to the annotator because it is set via the descriptor.

There are annotators which benefit from determining the types to use at runtime via a configuration parameter. This is already possible (e.g the example regex annotator),
but it is not possible to set the capabilities at runtime.
To improve this UIMA should ask the annotator for the capabilities. To make the configuration
easier it could be considered to add a "Type" range type for parameters.

This type system mapping makes annotators independent of one specific type system and allows the reuse with another type system, e.g. currently its hard to reuse a tokenizer from one group and combine it with a pos annotator from another group since
the token type would not match.

It is also not possible to set the language during runtime, e.g. an annotator
could have a model/rule file which also specifies the language.
The language setting is then redundant in the descriptor.

It should also be considered to reuse annotators with different settings
e.g. a few name finder instances but with different models and different output types.
This is too already possible but some information in the descriptor must
be duplicated for every instance, e.g. version, implementing class, etc.

What do you think ?

Jörn




 

Reply via email to