| |
| Apache uimaFIT (TM) v2.0.0 |
| -------------------------- |
| |
| |
| What is uimaFIT? |
| ---------------- |
| |
| uimaFIT is a part of the Apache UIMA(TM) project. uimaFIT can only be used in conjunction with |
| a compatible version of the Java version of the Apache UIMA SDK. For your convenience, the binary |
| distribution package of uimaFIT includes all libraries necessary to use uimaFIT. In particular for |
| novice users, it is strongly advised to obtain a copy of the full UIMA SDK separately. |
| |
| uimaFIT is a library that provides factories, injection, and testing utilities for UIMA. The |
| following list highlights some of the features uimaFIT provides: |
| |
| * Factories: simplify instantiating UIMA components programmatically without descriptor files. |
| For example, to instantiate an AnalysisEngine a call like this could be made: |
| AnalysisEngineFactory.createPrimitive(MyAEImpl.class, myTypeSystem, paramName, paramValue) |
| |
| * Injection: handles the binding of configuration parameter values to the corresponding member |
| variables in the analysis engines and handles the binding of external resources. For example, |
| to bind a configuration parameter just annotate a member variable with @ConfigurationParameter. |
| Then add one line of code to your initialize method: |
| |
| ConfigurationParameterInitializer.initialize(this, uimaContext). |
| |
| This is handled automatically if you extend the uimaFIT JCasAnnotator_ImplBase class. |
| |
| * Testing: uimaFIT simplifies testing in a number of ways described in the documentation. By making |
| it easy to instantiate your components without descriptor files a large amount of |
| difficult-to-maintain and unnecessary XML can be eliminated from your test code. This makes tests |
| easier to write and maintain. Also, running components as a pipeline can be accomplished with a |
| method call like this: |
| |
| SimplePipeline.runPipeline(reader, ae1, ..., aeN, consumer1, ... consumerN) |
| |
| |
| What's New in 2.0.0 |
| ------------------- |
| |
| uimaFIT 2.0.0 is the first Apache release. The migration to Apache has been used to address several |
| incompatible changes since 1.x.x. Please refer to the Migration Guide section in the reference |
| manual for further details. |
| |
| A full list of issues addressed in this release can be found on the Apache issue tracker: |
| |
| https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310570&version=12323969 |
| |
| Supported Platforms |
| ------------------- |
| uimaFIT requires Java 1.5 or higher, UIMA 2.4.2 or higher, and the Spring Framework 3.1.2 or higher. |
| |
| |
| Availability |
| ------------ |
| |
| uimaFIT is licensed with Apache Software License 2.0 and is available from the Apache UIMA project: |
| |
| http://uima.apache.org |
| http://svn.apache.org/repos/asf/uima/sandbox/uimafit |
| |
| uimaFIT is available via Maven Central. If you use Maven for your build environment, then you can |
| add uimaFIT as a dependency to your pom.xml file with the following: |
| |
| <dependency> |
| <groupId>org.apache.uima</groupId> |
| <artifactId>uimafit-core</artifactId> |
| <version>2.0.0</version> |
| </dependency> |
| |
| |
| Modules |
| ------- |
| |
| uimafit-core - the main uimaFIT module |
| uimafit-cpe - support for the Collection Processing Engine (multi-threaded pipelines) |
| uimafit-maven - a Maven plugin to automatically enhance UIMA components with uimaFIT |
| metadata and to generate XML descriptors for uimaFIT-enabled components. |
| uimafit-legacy-support - allows uimaFIT 2.0.0 to use uimaFIT 1.4.x meta data like Java annotations |
| and META-INF/org.uimafit/types.txt files. Pipelines mixing uimaFIT 1.4.x |
| and 2.x componens MUST be created using the 2.x factories, because the |
| 1.4.x factories will NOT understand how to handle uimaFIT 2.x components |
| or auto-configuration. |
| uimafit-spring - an experimental module serving as a proof-of-concept for the integration of |
| UIMA with the Spring Framework. It is currently not considered finished and |
| uses invasive reflection in order to patch the UIMA framework such that it |
| passes all components created by UIMA through Spring to provide for the |
| wiring of Spring context dependencies. This module is made available for |
| the adventurous but currently not considered stable, finished, or even a |
| proper part of the ackage. E.g. it is not included in the binary |
| distribution package. |
| |
| |
| Reference |
| --------- |
| |
| If you use uimaFIT to support academic research, then please consider citing the following paper as |
| appropriate: |
| |
| @InProceedings{ogren-bethard:2009:SETQA-NLP, |
| author = {Ogren, Philip and Bethard, Steven}, |
| title = {Building Test Suites for {UIMA} Components}, |
| booktitle = {Proceedings of the Workshop on Software Engineering, Testing, and Quality Assurance for Natural Language Processing (SETQA-NLP 2009)}, |
| month = {June}, |
| year = {2009}, |
| address = {Boulder, Colorado}, |
| publisher = {Association for Computational Linguistics}, |
| pages = {1--4}, |
| url = {http://www.aclweb.org/anthology/W/W09/W09-1501} |
| } |
| |
| History |
| ------- |
| |
| Since end of 2012, uimaFIT is part of the Apache UIMA project. |
| |
| Apache uimaFIT was formerly known as uimaFIT, which in turn was formerly known as UUTUC. |
| |
| Before uimaFIT has become an sub-project within the Apache UIMA project, it is was collaborative |
| effort between the Center for Computational Pharmacology at the University of Colorado Denver, the |
| Center for Computational Language and Education Research at the University of Colorado at Boulder, |
| and the Ubiquitous Knowledge Processing (UKP) Lab at the Technische Universität Darmstadt. |
| |
| The initial uimaFIT development team was: |
| |
| Philip Ogren, University of Colorado, USA |
| Richard Eckart de Castilho, Technische Universität Darmstadt, Germany |
| Steven Bethard, Stanford University, USA |
| |
| with contributions from Niklas Jakob, Fabio Mancinelli, Chris Roeder, Philipp Wetzler, Shuo Yang, |
| Torsten Zesch. |
| |
| |
| Support |
| ------- |
| |
| Please address questions to user@uima.apache.org. |