uima-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Baessler <...@michael-baessler.de>
Subject Re: UIMA pear runtime
Date Wed, 02 May 2007 09:37:06 GMT
After doing most of the UIMA pear runtime work... I would like to 
suggest something else that came to my mind when implementing the pear 

Currently we work with a customResourceSpecifier. I would like to change 
that to a real pearSpecifier. There are two main reasons.
    - Since the pear runtime is fully integrated to the UIMA core, I 
don't like that the descriptor has the source class that is used to load 
the pears in the specifier.
       When using an own descriptor we can hide this unnecessary setting 
from the user.
    - When we are now able to run pears in an aggregate flow, we may 
should also take care of the input and output capabilities for the pear 
main component descriptor. So
       my suggestion is to create a pear descriptor that also can have 
input and output capabilities, so FlowController can handle pears as well.

To make the whole pear stuff easier to use for the user, I would like to 
generate the pearSpecifier during the pear installation. We have all the 
necessary information when the pear is installed and can also set the 
input and output capabilities. So our users can use the generated pear 
descriptor to run the pear or to reference it in an aggregate descriptor.

What do you think?

-- Michael

Michael Baessler wrote:
> Currently it is not possible to run an installed pear file out of the 
> box in UIMA. I mean by just specifying the pear installation path or 
> something similar.
> To run installed pear files there is a lot of user configuration and 
> implementation necessary. So it would be nice to have a UIMA pear 
> runtime that can run an installed pear file out of the box.
> With the suggestion of having custom resource specifiers 
> <customResourceSpecifier> we can provide an easy way to integrate such 
> a UIMA pear runtime.
> We just have to implement a new PearAnalysisEngineWrapper that extends 
> the AnalysisEngineImplBase class that knows how to start an installed 
> pear file. All the necessary information is available and can be 
> parsed from the metadata of the installed pear. The utilities, e.g. to 
> dynamically load the classes (UIMA extension class loader) is also in 
> place and can be used. So an example of the <customResourceSpecifier> 
> can look like:
> <customResourceSpecifier 
> xmlns="http://uima.apache.org/resourceSpecifier">
> <resourceClassName>org.apache.PearAnalyisEngineWrapper</resourceClassName>

>    <parameters>
>        <parameter name="installedPear" 
> value="/path/to/the/root/directory/of/the/installed/pear/file"/>
>        <!-- and additional parameters if necessary -->
>    </parameters>
> </customResourceSpecifier>
> This solution will also work out of the box in our tooling. The tools 
> does not have to implement a PEAR runtime engine itself.
> Do we have any limitations when implementing this approach?
> Thoughts?

View raw message