| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "https://www.w3.org/TR/html4/loose.dtd"> |
| |
| |
| <!-- ====================================================================== --> |
| <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! --> |
| <!-- ====================================================================== --> |
| <html> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> |
| <style type="text/css">@import "stylesheets/base.css";</style> |
| <meta name="author" value=" |
| Apache UIMA™ Documentation Team"> |
| <meta name="email" value="dev@uima.apache.org"> |
| |
| |
| |
| <title>Apache UIMA - Apache uimaFIT™</title> |
| |
| <!-- Begin Cookie Consent plugin by Silktide - https://silktide.com/cookieconsent --> |
| <!-- Commented out because implied consent is not compatible with GDPR --> |
| <!-- |
| <script type="text/javascript"> |
| window.cookieconsent_options = {"message":"This website uses cookies to ensure you get the best experience on our website","dismiss":"Got it!","learnMore":"More info","link":"https://uima.apache.org/privacy-policy.html","theme":"dark-bottom"}; |
| </script> |
| |
| <script type="text/javascript" src="/cookieconsent2/cookieconsent.min.js"></script> |
| --> |
| <!-- End Cookie Consent plugin --> |
| |
| <!-- Begin Google Analytics --> |
| <!-- Commented out because GA requires consent according to GDPR --> |
| <!-- |
| <script> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| |
| ga('create', 'UA-70846351-1', 'auto'); |
| ga('set', 'anonymizeIp', true); |
| ga('send', 'pageview'); |
| |
| </script> |
| --> |
| <!-- End Google Analytics --> |
| </head> |
| |
| <body> |
| <div class="topLogos"> |
| <table border="0" width="100%" cellspacing="0"> |
| <!-- TOP IMAGE --> |
| <tr> |
| <td align='LEFT'> |
| <a href="index.html"> |
| <img style="border: 1px solid black;" src="./images/UIMA_banner2tlpTm.png" alt="UIMA project logo" border="0"/> |
| </a> |
| </td> |
| <td align='CENTER'> |
| <div class="pageBanner">Apache uimaFIT™</div> |
| </td> |
| <td align='RIGHT'> |
| <a href="https://www.apache.org"> |
| <img src="./images/asf-logo-on-white-smallTm.png" alt="Apache UIMA" border="0"/> |
| </a> |
| </td> |
| </tr> |
| </table> |
| <hr noshade="" size="1"/> |
| </div> |
| <table border="0" width="100%" cellspacing="4"> |
| <tr> |
| <td align='RIGHT' colspan="2"> |
| <form method="get" action="https://www.google.com/search"> |
| Search the site |
| <input type="text" name="q" size="25" maxlength="255" value="" /> |
| <input type="hidden" name="sitesearch" value="https://uima.apache.org/" /> |
| <input name="Search" value="Search Site" type="submit"/> |
| </form> |
| </td> |
| </tr> |
| <tr> <!-- LEFT SIDE NAVIGATION --> |
| <td width="20%" valign="top"> |
| |
| |
| |
| |
| |
| |
| <!-- regular menu --> |
| <div class="navBar"> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">General</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="./index.html">Home</a> |
| </div> |
| <div class="navBarItem"> <a href="./downloads.cgi">Downloads</a> |
| </div> |
| <div class="navBarItem"> <a href="./documentation.html">Documentation</a> |
| </div> |
| <div class="navBarItem"> <a href="./news.html">News</a> |
| </div> |
| <div class="navBarItem"> <a href="./publications.html">Publications</a> |
| </div> |
| <br style="line-height: .5em"/> |
| <div class="navBarItem"> <a href="https://issues.apache.org/jira/browse/uima" target="_blank" rel="noopener">Issue tracker <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="https://cwiki.apache.org/confluence/display/UIMA/" target="_blank" rel="noopener">Wiki <img src="images/offsitelink.png"/></a> |
| </div> |
| <br style="line-height: .5em"/> |
| <div class="navBarItem"> <a href="https://cwiki.apache.org/confluence/display/UIMA/Powered+by+Apache+UIMA" target="_blank" rel="noopener">Powered By UIMA <img src="images/offsitelink.png"/></a> |
| </div> |
| </div> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">Community</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="./get-involved.html">Get Involved</a> |
| </div> |
| <div class="navBarItem"> <a href="./mail-lists.html">Mailing Lists</a> |
| </div> |
| <div class="navBarItem"> <a href="./contribution-policy.html">Contribution Policies</a> |
| </div> |
| <div class="navBarItem"> <a href="./faq.html">FAQ</a> |
| </div> |
| <div class="navBarItem"> <a href="./project-guidelines.html">Project Guidelines</a> |
| </div> |
| </div> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">Components & Tools</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="./sandbox.html#uima-addons-annotators">Annotators</a> |
| </div> |
| <div class="navBarItem"> <a href="./toolsServers.html">Tools & Servers</a> |
| </div> |
| <div class="navBarItem"> <a href="./sandbox.html">Addons and Sandbox</a> |
| </div> |
| <div class="navBarItem"> <a href="./ruta.html">UIMA Ruta</a> |
| </div> |
| <div class="navBarItem"> <a href="https://github.com/apache/uima-uimafit" target="_blank" rel="noopener">uimaFIT <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="./external-resources.html">External Resources</a> |
| </div> |
| </div> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">Development</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="./dev-quick.html">Quick Start: building</a> |
| </div> |
| <div class="navBarItem"> <a href="./building-uima.html">Building from Source</a> |
| </div> |
| <div class="navBarItem"> <a href="./one-time-setup.html">One-time setups</a> |
| </div> |
| <div class="navBarItem"> <a href="./svn.html">Source Code</a> |
| </div> |
| <div class="navBarItem"> <a href="./release.html">Doing a UIMA release</a> |
| </div> |
| <div class="navBarItem"> <a href="https://www.apache.org/security/committers.html" target="_blank" rel="noopener">Doing a CVE (Apache) <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="./eclipse-update-site.html">Eclipse Update Sites</a> |
| </div> |
| <div class="navBarItem"> <a href="./git.html">GIT</a> |
| </div> |
| <div class="navBarItem"> <a href="./codeConventions.html">Code Conventions</a> |
| </div> |
| <div class="navBarItem"> <a href="./uima-specification.html">UIMA Specification (OASIS)</a> |
| </div> |
| <div class="navBarItem"> <a href="./team-list.html">Project Team</a> |
| </div> |
| <div class="navBarItem"> <a href="./maven-design.html">Maven Use</a> |
| </div> |
| <div class="navBarItem"> <a href="./updating-website.html">Updating this Website</a> |
| </div> |
| </div> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">Events and Conferences</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="./coling14.html">COLING 2014</a> |
| </div> |
| <div class="navBarItem"> <a href="./gscl13.html">GSCL 2013</a> |
| </div> |
| <div class="navBarItem"> <a href="./iks09.html">IKS 2009</a> |
| </div> |
| <div class="navBarItem"> <a href="./gscl09.html">GSCL 2009</a> |
| </div> |
| <div class="navBarItem"> <a href="./lsm09.html">LSM 2009</a> |
| </div> |
| <div class="navBarItem"> <a href="./lrec08.html">LREC 2008</a> |
| </div> |
| <div class="navBarItem"> <a href="./gldv07.html">GLDV 2007</a> |
| </div> |
| </div> |
| <br/> |
| <div class="navBarItem"> <div class="navPartHeading">ASF</div> |
| </div> |
| <div class="navBar"> |
| <div class="navBarItem"> <a href="https://www.apache.org/licenses/" target="_blank" rel="noopener">License <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="https://www.apache.org/foundation/thanks.html" target="_blank" rel="noopener">ASF Sponsors <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="https://www.apache.org/foundation/sponsorship.html" target="_blank" rel="noopener">ASF Sponsorship <img src="images/offsitelink.png"/></a> |
| </div> |
| <div class="navBarItem"> <a href="./security_report">Security</a> |
| </div> |
| </div> |
| </div> |
| </td> |
| <td width="80%" align="left" valign="top"> |
| <div class="sectionTable"> |
| <table class="sectionTable"> |
| <tr><td> |
| <a name="Apache uimaFIT"><h1><img src="images/UIMA_4sq50tightCropSolid.png"/> Apache uimaFIT</h1></a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="sectionBody"> |
| <ul> |
| <li><a href='#Overview'> |
| Overview |
| |
| </a></li> |
| <li><a href='#Modules'> |
| Modules |
| |
| </a></li> |
| <li><a href='#Documentation'> |
| Documentation |
| |
| </a></li> |
| <li><a href='#Developer Information'> |
| Developer Information |
| |
| </a></li> |
| <li><a href='#Reference'> |
| Reference |
| |
| </a></li> |
| <li><a href='#History'> |
| History |
| |
| </a></li> |
| </ul> |
| <table class="subsectionTable" id='uima.fit.overview'> |
| <tr><td> |
| |
| |
| |
| <a name="Overview"> |
| <h2>Overview |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <p> |
| Configuring UIMA components is generally achieved by creating XML descriptor |
| files which tell the framework at runtime how components should be |
| instantiated and deployed. These XML descriptor files are very tightly |
| coupled with the Java implementation of the components they describe. |
| We have found that it is very difficult to keep the two consistent |
| with each other especially when code refactoring is very frequent. |
| uimaFIT provides Java annotations for describing UIMA components which |
| can be used to directly describe the UIMA components in the code. This |
| greatly simplifies refactoring a component definition (e.g. changing a |
| configuration parameter name). It also makes it possible to generate |
| XML descriptor files as part of the build cycle rather than being |
| performed manually in parallel with code creation. uimaFIT also makes |
| it easy to instantiate UIMA components without using XML descriptor |
| files at all by providing a number of convenience factory methods |
| which allow programmatic/dynamic instantiation of UIMA components. |
| This makes uimaFIT an ideal library for testing UIMA components |
| because the component can be easily instantiated and invoked without |
| requiring a descriptor file to be created first. uimaFIT is also |
| helpful in research environments in which programmatic/dynamic |
| instantiation of a pipeline can simplify experimentation. For example, |
| when performing 10-fold cross-validation across a number of |
| experimental conditions it can be quite laborious to create a |
| different set of descriptor files for each run or even a script that |
| generates such descriptor files. uimaFIT is type system agnostic and |
| does not depend on (or provide) a specific type system. |
| </p> |
| <p> |
| Apache uimaFIT is a library that provides factories, injection, and testing utilities for |
| Apache UIMA™. The following list highlights some of the features uimaFIT provides: |
| </p> |
| <ul> |
| <li> |
| <p> |
| <b>Factories:</b> simplify instantiating UIMA components programmatically without descriptor files. |
| For example, to instantiate an AnalysisEngine a call like this could be made: |
| </p> |
| <pre>AnalysisEngineFactory.createEngine(MyAEImpl.class, myTypeSystem, |
| paramName1, paramValue1, |
| paramName2, paramValue2, |
| ...)</pre> |
| </li> |
| <li> |
| <p> |
| <b>Injection:</b> 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 <code>@ConfigurationParameter</code>. |
| Then add one line of code to your initialize method: |
| </p> |
| <pre>ConfigurationParameterInitializer.initialize(this, uimaContext)</pre> |
| <p> |
| This is handled automatically if you extend the uimaFIT component base classes, such as |
| <code>JCasAnnotator_ImplBase</code>. External resources can likewise by injected via the |
| <code>@ExternalResource</code> annotation. |
| </p> |
| </li> |
| <li> |
| <p> |
| <b>Testing:</b> 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: |
| </p> |
| <pre>SimplePipeline.runPipeline(reader, ae1, ..., aeN, consumer1, ... consumerN)</pre> |
| </li> |
| </ul> |
| <note> |
| <p> |
| uimaFIT is a part of the Apache UIMA 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. |
| </p> |
| </note> |
| </blockquote> |
| </td></tr> |
| </table> |
| <table class="subsectionTable" id='uima.fit.modules'> |
| <tr><td> |
| |
| |
| |
| <a name="Modules"> |
| <h2>Modules |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <ul> |
| <li> |
| <b>uimafit-core</b> |
| is the main uimaFIT module. |
| </li> |
| <li> |
| <b>uimafit-cpe</b> |
| provides support for the Collection Processing Engine (multi-threaded pipelines). |
| </li> |
| <li> |
| <b>uimafit-maven-plugin</b> |
| is a Maven plugin to automatically enhance UIMA components with uimaFIT |
| metadata and to generate XML descriptors for uimaFIT-enabled components. |
| </li> |
| <li> |
| <b>uimafit-spring</b> |
| is 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 package. E.g. it is not included in the binary |
| distribution package. |
| </li> |
| <li> |
| <b>uimafit-legacy-support</b> (only uimaFIT < 3.0.0) |
| allows uimaFIT 2.x to use uimaFIT 1.4.x meta data like Java annotations |
| and <code>META-INF/org.uimafit/types.txt</code> 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 <b>not</b> understand how to handle uimaFIT 2.x components |
| or auto-configuration. |
| </li> |
| </ul> |
| </blockquote> |
| </td></tr> |
| </table> |
| <table class="subsectionTable" id='uima.fit.documentation'> |
| <tr><td> |
| |
| |
| |
| <a name="Documentation"> |
| <h2>Documentation |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <p> |
| Here, you can find the documentation for the most recent uimaFIT release compatible with the UIMA Java |
| SDK v3 and v2 respectively. |
| </p> |
| <p><b>Latest uimaFIT v3.x documentation</b></p> |
| <ul> |
| <li><a href="d/uimafit-current/tools.uimafit.book.html">Guide and Reference Manual (v3.x)</a></li> |
| <li><a href="d/uimafit-current/api/index.html">API documentation (v3.x)</a></li> |
| <li><a href="d/uimafit-current/README.txt">Latest release notes (v3.x)</a></li> |
| </ul> |
| <p><b>Latest uimaFIT v2.x documentation</b></p> |
| <ul> |
| <li><a href="d/uimafit-v2-current/tools.uimafit.book.html">Guide and Reference Manual (v2.x)</a></li> |
| <li><a href="d/uimafit-v2-current/api/index.html">API documentation (v2.x)</a></li> |
| <li><a href="d/uimafit-v2-current/README.txt">Latest release notes (v2.x)</a></li> |
| </ul> |
| <p>Should you require documentation for a specific version of uimaFIT, please check our <a href="https://svn.apache.org/repos/asf/uima/site/archive/docs/d">archive</a>.</p> |
| </blockquote> |
| </td></tr> |
| </table> |
| <table class="subsectionTable" id='uima.fit.developer'> |
| <tr><td> |
| |
| |
| |
| <a name="Developer Information"> |
| <h2>Developer Information |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <p>The latest version of uimaFIT is available via <a href="https://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.uima%22%20AND%20%22uimafit*%22">Maven Central</a>. |
| If you use Maven as your build tool, then you can add uimaFIT as a dependency |
| in your pom.xml file (additionally to other UIMA dependencies). Please mind to change the version |
| in the dependency declaration to the version you actually want to use:</p> |
| <pre> |
| <dependency> |
| <groupId>org.apache.uima</groupId> |
| <artifactId>uimafit-core</artifactId> |
| <version>3.3.0</version> |
| </dependency> |
| </pre> |
| <subsubsection> |
| To build uimaFIT from the repository, clone the git repository at |
| <code>https://github.com/apache/uima-uimafit.git</code> and execute |
| <code>mvn clean install</code> at the root of the cloned repository. |
| </subsubsection> |
| <p> |
| The sources of the current release are available at the <a href="downloads.html">download page</a>. |
| </p> |
| </blockquote> |
| </td></tr> |
| </table> |
| <table class="subsectionTable" id='uima.fit.reference'> |
| <tr><td> |
| |
| |
| |
| <a name="Reference"> |
| <h2>Reference |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <p> |
| If you use uimaFIT to support academic research, then please consider citing the following |
| paper as appropriate:</p> |
| <pre> |
| @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 = {https://www.aclweb.org/anthology/W/W09/W09-1501} |
| } |
| </pre> |
| </blockquote> |
| </td></tr> |
| </table> |
| <table class="subsectionTable" id='uima.fit.history'> |
| <tr><td> |
| |
| |
| |
| <a name="History"> |
| <h2>History |
| </h2> |
| </a> |
| </td></tr> |
| <tr><td> |
| <blockquote class="subsectionBody"> |
| <p> |
| Since end of 2012, uimaFIT is part of the Apache UIMA project. |
| </p> |
| <p> |
| Apache uimaFIT was formerly known as uimaFIT, which in turn was formerly known as UUTUC. |
| </p> |
| <p> |
| 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 Universitaet Darmstadt. |
| </p> |
| <p> |
| The initial uimaFIT development team was: |
| </p> |
| <ul> |
| <li>Philip Ogren, University of Colorado, USA</li> |
| <li>Richard Eckart de Castilho, Technische Universitaet Darmstadt, Germany</li> |
| <li>Steven Bethard, Stanford University, USA</li> |
| </ul> |
| <p> |
| with contributions from Niklas Jakob, Fabio Mancinelli, Chris Roeder, Philipp Wetzler, Shuo Yang, |
| and Torsten Zesch. |
| </p> |
| </blockquote> |
| </td></tr> |
| </table> |
| </blockquote> |
| </p> |
| </td></tr> |
| </table> |
| </td> |
| </tr> |
| <!-- FOOTER --> |
| <tr><td colspan="2"> |
| <hr noshade="" size="1"/> |
| </td></tr> |
| <tr><td colspan="2"> |
| <table class="pageFooter"> |
| <tr> |
| <td><a href="index.html">Home</a></td> |
| <td><a href="privacy-policy.html">Privacy Policy</a></td> |
| <td style="font-size:75%"> |
| Copyright © 2006-2024, The Apache Software Foundation.<br/> |
| Apache UIMA, UIMA, the Apache UIMA logo and the Apache Feather logo are trademarks of The Apache Software Foundation.<br/> |
| All other marks mentioned may be trademarks or registered trademarks of their respective owners. |
| </td> |
| <td><a href="mailto:dev@uima.apache.org">Contact us</a></td> |
| </tr> |
| </table> |
| </td></tr> |
| </table> |
| </body> |
| </html> |
| |