Hi Richard,

I'm generally in favor of bringing the concepts of uimaFIT into UIMA. I would like to have a discussion on the pros/cons of alternatives to doing this.

Here are some topics for discussion; these might reasonably end up in separate threads at some point :-)

1) uimaFIT already has an established user base. This means it will have backwards-compatibility requirements for that community. This will be a factor in how we proceed to integrate the concepts into UIMA.

1a) If we find, thru a bigger community discussion / involvement, other directions we want to align the uimaFIT concepts with, it seems we might end up with both an "old-style" uimaFIT - supporting the existing user base, paying close attention to backwards compatibility and/or migration, and a (likely incompatible) new-style integration of the uimaFIT concepts into UIMA.

2) Bringing the code for uimaFIT into the UIMA project: It seems it would initially go into the Sandbox until IP issues (if any) are resolved, and then be moved to the add-ons, since it is already a mature thing with users. If we then go down the path envisioned in 1a), we would have some kind of parallel development in UIMA of the concepts.

Here's one example of a possible future alternative: uimaFIT uses special files to collect type system description references together where they can be found by convention. We have previously been looking into various approaches to better manage issues around classpaths (we currently have PEARs), based on OSGi support, including hooking up with repositories (the idea being that UIMA components could live in Maven repositories, and be "reusable" by reference, using the Maven schemes of identifying artifacts by version). A key part of this is the "version" management. As we go forward, we might find some interesting integrations of type system information that is well aligned with these kinds of conventions.

3) If we "open up" the discussion around uimaFIT-inspired improvements to UIMA, I can see pro/con arguments for moving uimaFIT to Apache:

3a1) Pro: It would require the IP "vetting" of the uimaFIT code base, and thus make that code more re-usable inside UIMA.
3a2) Pro: It could likely lead to some new committers :-)
3a3) Pro: It would likely result in increased focus/attention on making progress in this area.

3b1) Con: It may confuse UIMA users somewhat, as to what we're doing.

I guess this is all normal, and goes along under the category "managing change" 
:-).

What do the uimaFIT community/developers desire, in regards to point (1) above?

-Marshall


On 5/25/2012 2:22 AM, Richard Eckart de Castilho wrote:
Hello everybody,

we would like to propose the contribution of uimaFIT to Apache UIMA. uimaFIT 
provides an API that facilitates using UIMA embedded in other Java code, which 
is also helpful for unit tests. It also provides context injection features 
such as annotations on class member fields which in UIMA component which are 
initialized from the UIMA context.

uimaFIT already is a proven product on its own and has an established user base 
(cf. [1] [2] [3] [4] [5] [6] [7] [8]). But we think that having uimaFIT hosted 
with Apache UIMA would allow and encourage more people to use it and we could 
get more feedback that can be used to further improve uimaFIT.

It has been quite some time that we last talked about uimaFIT. Since then, I 
did another iteration over the documentation of uimaFIT in its wiki. I don't 
claim it to be perfect, but I think it is more ordered now and contains less 
duplicate information. Also, I finally see a possibility time-wise to address 
whatever work may be necessary in the contribution process.

We only have a rough idea about the process and its requirements. If you are 
interested, I'd be happy to talk about it.

Best regards,

-- Richard

[1] 
http://jochenleidner.posterous.com/are-you-fit-for-uima-uimafit-provides-support
[2] http://www.uima-hpc.de/en/technical.html
[3] http://code.google.com/p/dkpro-core-asl/
[4] http://code.google.com/p/cleartk/
[5] http://biolemmatizer.sourceforge.net/
[6] http://rxinformatics.umn.edu/clas.html
[7] http://www.ohloh.net/p/uimafit
[8] http://search.maven.org/#search%7Cga%7C1%7Cuimafit

Reply via email to