UIMA (// yoo-EE-mə), short for Unstructured Information Management Architecture, is an OASIS standard for content analytics, originally developed at IBM. It provides a component software architecture for the development, discovery, composition, and deployment of multi-modal analytics for the analysis of unstructured information and integration with search technologies.
The UIMA architecture can be thought of in four dimensions:
- It specifies component interfaces in an analytics pipeline.
- It describes a set of design patterns.
- It suggests two data representations: an in-memory representation of annotations for high-performance analytics and an XML representation of annotations for integration with remote web services.
- It suggests development roles allowing tools to be used by users with diverse skills.
Implementations and uses
|Developer(s)||IBM, Apache Software Foundation (since October 2006)|
3.1.1 / November 8, 2019
|Written in||Java with C++ enablement|
|Type||text mining, information extraction|
|License||Apache License 2.0|
UIMA is used in a number of software projects:
- IBM Research's Watson uses UIMA for analyzing unstructured data.
- The Clinical Text Analysis and Knowledge Extraction System (Apache cTAKES) is a UIMA-based system for information extraction from medical records.
- DKPro Core is a collection of reusable UIMA components for general-purpose natural language processing.
- Data Discovery and Query Builder
- Entity extraction
- General Architecture for Text Engineering (GATE)
- IBM Omnifind
- UIMA Frequently Asked Questions (FAQ's) The Apache Software Foundation
- UIMA Specification The Apache Software Foundation.
- "Apache UIMA - News". uima.apache.org. Retrieved 11 December 2019.
- "Apache Innovation Bolsters IBM's "Smartest Machine on Earth" in First-ever Man vs. Machine Competition on Jeopardy! Quiz Show : The Apache Software Foundation Blog". blogs.apache.org. Retrieved 23 April 2018.