OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

tc-announce message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Proposed Charter for UIMA Technical Committee


To OASIS Members:

  The charter below has been submitted to establish the Unstructured Information
Management Architecture (UIMA) Technical Committee. In accordance with the OASIS
TC Process Policy section 2.2
(http://www.oasis-open.org/committees/process.php#2.2) the proposed charter is
hereby submitted for comment. The comment period shall remain open until 11:45
pm ET on 24 September 2006. 

  A new mailing list has been established for the purpose of submitting comments
on proposed charters. Any OASIS member may post to this list by sending email to
mailto:oasis-charter-discuss@lists.oasis-open.org. All messages will be publicly
archived at http://lists.oasis-open.org/archives/oasis-charter-discuss/. Members
who wish to receive emails must join the group by selecting "join group" on the
group home page
http://www.oasis-open.org/apps/org/workgroup/oasis-charter-discuss/. Please note
that primary representative approval is *not* required to join this group.

  A telephone conference will be held among the Convener, the OASIS TC
Administrator, and those proposers who wish to attend within four days of the
close of the comment period. The announcement and call-in information will be
noted on the OASIS Charter Discuss Group Calendar.

  We encourage member comment and ask that you note the name of the proposed TC
(UIMA) in the subject line of your email message.

Mary

-----------------------------------
Mary P McRae
Manager of TC Administration, OASIS
email: mary.mcrae@oasis-open.org
web: www.oasis-open.org 


==============================================================

UIMA Specification Technical Committee
Charter

===========================================================
1. The name of the TC, such name not to have been previously used for an OASIS
TC and not to include any trademarks or service marks not owned by OASIS. The
proposed TC name is subject to TC Administrator approval and may not include any
misleading or inappropriate names. The proposed name must specify any acronyms
or abbreviations of the name that shall be used to refer to the TC.
===========================================================

Unstructured Information Management Architecture (UIMA) Technical Committee

===========================================================
2. A statement of purpose, including a definition of the problem to be solved.
===========================================================

Unstructured Information and UIM Applications
---------------------------------------------
Unstructured information represents the largest, most current and fastest
growing source of knowledge available to businesses and governments worldwide.
The web is just the tip of the iceberg. 
Consider the droves of corporate and technical documentation ranging from best
practices, research reports, medical abstracts, problem reports, customer
communications and contracts to emails and voice mails. Beyond these consider
the growing number of broadcasts containing audio, video and speech. In these
mounds of natural language, speech and video artifacts often lay nuggets of
knowledge critical for analyzing and solving problems, detecting threats,
realizing important trends and relationships, creating new opportunities or
preventing disasters. 

- Shaving off just seconds per call to find the right technical documentation in
call-centers can save millions of dollars.

- Rapidly detecting emerging trends in problem-reports coming in from all over
the globe can avoid recalls and save companies and their customers millions if
not billions.

- Analyzing SEC reports to help evaluate corporate financial positions.

- Automating the analysis, segmentation and restructuring of educational content
to better serve changing skill sets or new learning objectives can save many
hours and can better enable just-in-time learning for critical tasks.

- Detecting otherwise unrealized drug interactions through analyzing the
linkages buried in millions of medical abstracts can help prevent disaster as
well as help discover new drugs or cures.

- Analyzing communications linked to terrorist networks in the form of
multi-lingual text, speech or video can help uncover plots threatening national
security before they happen.

These are just a few of the applications that can benefit from the exploitation
of unstructured information.

Applications like these, which rely on the rapid discovery of vital knowledge,
require the analysis of unstructured information. This is all the information
that has NOT been carefully encoded in enterprise databases but rather exists as
natural language text, speech or video.  These applications rely on the rapid
assignment of semantics to huge volumes of unstructured content exactly so that
this content may be structured and exploited by traditional application
infrastructure (e.g., database management systems, knowledgebase systems,
information retrieval systems, etc.).

Unstructured information may be defined as the direct product of human
communication. Examples include natural language documents, email, speech,
images and video. It is information that was not specifically encoded for
machines to process but rather authored by humans for humans to understand. We
say it is "unstructured" 
because it lacks explicit semantics ("structure") required for applications to
interpret the information as intended by the human author or required by the
end-user application.  

Unstructured information may be contrasted with the information in classic
relational databases where the intended interpretation for every field data is
explicitly encoded in the database by column headings. Consider information
encoded in XML as another example.  In an XML document some of the data is
wrapped by tags which provide explicit semantic information about how that data
should be interpreted. An XML document or a relational database may be
considered semi-structured in practice, because the content of some chunk of
data, a blob of text in a text field labeled "description" for example, may be
of interest to an application but remain without any explicit tagging-that is,
without any explicit semantics or structure.

For unstructured information to be processed by traditional applications, it
must be first analyzed to assign application- specific semantics to the
unstructured content. Another way to say this is that the unstructured
information must become "structured" where the added structure explicitly
provides the semantics required by target applications to interpret the data. 

An example of assigning semantics includes wrapping regions of text in a text
document with appropriate XML tags that might identify the names of
organizations or products. Another example may extract elements of a document
and insert them in the appropriate fields of a relational database or use them
to create instances of concepts in a knowledgebase. Another example may analyze
a voice stream and tag it with the information explicitly identifying the
speaker.

A simple analysis on documents may, for example, scan each token in each
document of a collection to identify names of organizations. It may insert a tag
wrapping and identifying every found occurrence of an organization name and
output the XML that explicitly annotates each with the appropriate tag. An
application that manages a database of organizations may now use the structured
information produced by the document analysis to populate a relational database.

In general, we refer to the act of assigning semantics to a region of some
unstructured content (e.g., a document) as 
"analysis".   A software component or service that performs the 
analysis is an "analytic". 

The semantics are captured by an analytic as structure metadata elements. So
*analytics* implement operations that produce structured metadata elements
describing regions of the unstructured content which they analyze. The generated
metadata may be represented in many different ways including as XML tags. 

We refer to systems that perform analysis on unstructured information as
"Unstructured Information Management (UIM) applications." 

UIM applications tend to be highly decomposable; that is, they may be broken
down into many fine-grained *analytics*.  Each of these performs some
constituent function in an overall analysis flow. 

Analytics and Analysis Frameworks
----------------------------------
Analytics may be reused in different flows to perform different aggregate
analyses. Even in our simple example above, a first, very common function, in
the overall process is to tokenize the document (identify each individual word).
This tokenization function may be reused as a first step in many different
analysis tasks for many different applications.

Many software frameworks have been developed in support of building and
integrating component analytics (e.g., Gate, Catalyst, Tipster, Mallet, Talent,
Open-NLP, etc.).  However, no clear standard has emerged for enabling the
interoperability of analytics across modalities (text, audio, video, etc.),
frameworks and programming platforms in support of developing robust and
pluggable UIM applications. 

The UIMA Java Framework is an implementation that arguably comes closest to
addressing the breadth of these requirements. It was originally developed as
part of the UIMA project at IBM Research (http://www.ibm.com/research/uima). It
provides a common, object- oriented and extensible means for representing
unstructured information and its metadata, a set of basic interface definitions
for implementing interoperable analytics and a Java run-time for supporting
analytic composition and deployment (of Java and C++ analytics).

The UIMA Java Framework was released in late 2004 as part of the UIMA Software
Developers Kit (SDK) on IBM AlphaWorks
(http://www.ibm.com/alphaworks/tech/uima). The SDK is freely available and
provides the tools and run-time necessary for creating, composing and deploying
component analytics. These may be implemented by the developer to analyze and
assign semantics to multi-modal data including, for example, combinations of
text, audio and video. 

In early 2006 IBM contributed the UIMA Java Framework to the open-source
community through source forge (http://uima- framework.sourceforge.net/). The
open-source will soon be managed in a venue where IBM and non-IBM committers can
participate in its collaborative development.  Since the framework's posting,
there have been over 8000 downloads of the framework by industry, government and
academia. It has been included in IBM Information Management products and used
in many solutions in areas ranging from life-sciences, to national security to
customer relationships management.

The Need for a Standard Specification
--------------------------------------
The UIMA Java Framework is an implementation tied to a particular programming
model and platform. It makes many system level commitments based on a variety of
design points. This implementation, however, suggests a more general
specification for interoperability that may allow for different framework
implementations and different levels of compliance supporting interoperability
for a broader range of application and programming requirements. 

We propose to develop the UIMA Specification to explicitly define standard data
specifications, operation types and communication protocols to facilitate
interoperability of analytics at the data and services level. 

This level of specification will serve a critical role in helping to facilitate
lighter-weight interoperability across a broader spectrum of platforms,
programming models, applications and tools for text and multi-modal analytics. 

The intent is that the standard will allow different frameworks to emerge, while
also allowing applications built on different implementations to have a standard
means to share analysis data and services. It will lower the barrier for
component and application developers to interoperate at different levels
allowing a broader community to discover, reuse and compose a growing body of
text and multi-modal analytics.

===========================================================
3. The scope of the work of the TC, which must be germane to the mission of
OASIS, and which includes a definition of what is and what is not the work of
the TC, and how it can be determined when the work of the TC has been completed.
The scope may reference a specific contribution of existing work as a starting
point, but other contributions may be made by Members on or after the first
meeting of the TC. Such other contributions shall be considered by the members
of the TC on an equal basis to improve the original starting point contribution.
===========================================================

The scope of the work of the TC is to generalize from the published UIMA Java
Framework implementation and produce a platform-independent specification in
support of the interoperability, discovery and composition of analytics across
modalities, domain models, frameworks and platforms. 

Specifically, the TC is to consider an initial draft contributed by IBM in the
Research Report based on the UIMA project entitled "Towards an Interoperability
Standard for Text and Multi-Modal Analytics". This report should be used as a
straw man to scope, develop and rationalize a formal UIMA specification.

The TC will address three primary tasks

	1. Elements of the Specification
	2. Related Issues and Standards
	3. Higher-Level Documentation

Elements of the Specification
------------------------------
The committee will be charged with evaluating, extending, modifying and refining
the proposed eight (8) elements of the UIMA specification. These elements are
dependent on other standards including UML, eMOF, eCore, XML Schema, XMI, OCL,
WSDL and SOAP.

1. Common Analysis Structure (CAS) Specification. Provides a simple and
extensible typed model for representing analysis data as a standard object model
that may be easily instantiated and manipulated in object-oriented programming
systems.  This element of the specification is provided as a UML model. We
propose adopting the XML Metadata Interchange (XMI) specification
(http://www.omg.org/docs/formal/03-05-02.pdf ) to provide a standard means for
representing analysis data as an XML document.

2. Type System Language Specification. Provides a standard means for associating
object model semantics with artifact metadata that complies with object modeling
standards. We propose to use Ecore as the Type System language. Ecore is the
modeling language used in the Eclipse Modeling Framework and is tightly aligned
with the OMG's EMOF standard
(http://dev.eclipse.org/viewcvs/indextools.cgi/*checkout*/org.ecl
ipse.emf/doc/org.eclipse.emf.doc/references/overview/EMF.html ). 
An Ecore Type System is represented as an XMI document to support the XML-based
representation and interchange of Type Systems.

3. Type System Base Model. Provides a standard and extensible set of
domain-independent types generally useful for analyzing unstructured
information.

4. The Behavioral Metadata Specification. Provides a standard declarative means
for describing the capabilities of analysis operations in terms of what types of
CASs they can process, what elements in a CAS they can analyze, and what sorts
of effects they would have on CAS contents as a result.  Behavioral metadata
would be used to assist in the discovery and composition of analytics based on
their described function. We propose appealing to the OCL standard
(http://www.omg.org/technology/documents/formal/ocl.htm )to represent behavioral
metadata.

5. Analytic Metadata Specification. Provides a standard declarative means for
describing identification, configuration and behavioral information about
analytics. This specification may be represented as a UML Model from which an
XML Schema may be generated. It refers to the Behavioral Metadata Specification
to represent an analytic's behavioral information.

6. Aggregate Analytic Metadata Specification. Provides a standard declarative
means for an aggregate analytic to:  a. refer to its constituent analytics, b.
identify a flow controller, which determines the order in which the constituent
analytics of the aggregate are invoked on a CAS and  c. define mappings to
facilitate the composition of independently-developed analytics.

7. Abstract Interfaces.  Abstractly describes the interfaces to the two
different types of components or services that developers may implement, namely,
Analytics and Flow Controllers. These abstract interfaces may be specified with
a UML model.

8. Service Descriptions and SOAP Bindings.  Provide a standard means for
implementing Analytics and Flow Controllers as web services using SOAP. This
specification may be represented using WSDL (http://www.w3.org/TR/wsdl20/ ).

Related Issues, Requirements and Standards
------------------------------------------
In addition,  the UIMA TC will be charged with providing recommendations
regarding how other requirements should or should NOT  be addressed  or related
to by the UIMA specification
including:

1. CAS representations for efficient stream operations 2. Representing and
Recording Provenance Information 3. Privacy and Security Issues 4. General
alignment with ontologies and related representational 
	standards including OWL and RDF
5. Facilities for mapping between metadata models (e.g., XSLT) 6. Support for
existing metadata models and their representations 
	(VoiceXML, LegalXML, MPEG-7, etc.)
7. Componentization, life-cycle management and related standards 
	(e.g., OSGi)
8. Discovery-services in support of finding analytics based on 
	identification and behavioral metadata
9. Analytic configuration management

High-Level Documentation
-------------------------
The UIMA TC should produce higher-level documentation to help motivate and
promote the UIMA specification as a standard that may include use-cases,
case-studies and high-level architectural descriptions but excludes detailed
formalizations.

Out of Scope
-------------
Finally, the UIMA TC will NOT address platform-dependent specifications
including the definition programming models or object-oriented APIs, the binding
of interfaces to any particular programming language, workflow engines or
languages, the implementation or integration of system middleware services to
address the scalability, componentization or life-cycle management of framework
implementations. The UIMA TC would NOT define any specific domain model (e.g.,
set of XML tags or types) for marking up unstructured information.

===========================================================
4. A list of deliverables, with projected completion dates.
===========================================================

1. Use Cases.......................................2Q 2007 2. The CAS
Model...................................2Q 2007 3. The CAS XMI
Specification.......................2Q 2007 4. The Type System
Language........................3Q 2007 5. The Type System Base
Model......................3Q 2007 6. Behavioral Metadata
............................4Q 2007 7. Analytic Metadata
..............................4Q 2007 8. Aggregate Analytic
Metadata.....................4Q 2007 9. Abstract
Interfaces.............................4Q 2007 10. Service WSDL
Descriptions......................4Q 2007 11. Recommendations regarding related 
	requirements..................................4Q 2007 12. Appendix: Soap
Bindings........................4Q 2007 13. Appendix: Java Framework Compliance
Notes......4Q 2007 14. Appendix: Design Patterns......................4Q 2007

===========================================================
5. Specification of the IPR Mode under which the TC will operate.
===========================================================

RF on Limited Terms

===========================================================
6. The anticipated audience or users of the work.
===========================================================

1. UIMA Java Framework developers
2. Text Analysis Vendors
3. Search and Knowledge Discovery Vendors 4. Document Management Vendors 5.
Video and Speech Analysis Vendors 6. Machine Translation Vendors 7. Government
Contractors 8. US and other Government agencies 9. R&D in Life-Sciences and
Bio-Informatics 10. Universities performing research in text & multi-modal 
	analytics
11. Publishing 

===========================================================
7. The language in which the TC shall conduct business.
===========================================================

English

===========================================================
Non-normative information regarding the startup of the TC

===========================================================
1. Identification of similar or applicable work that is being done in other
OASIS TCs or by other organizations, why there is a need for another effort in
this area and how this proposed TC will be different, and what level of liaison
will be pursued with these other organizations.
===========================================================
Domain-Model Independence and Stand-off Annotations
----------------------------------------------------
We refer to *analytics* as operations that analyze unstructured content to
produce structured metadata elements intended to describe regions of the
unstructured content.  
The UIMA Specification is focused on supporting interoperability across analytic
implementations. That is, on facilitating the analytic developers to discover,
reuse and compose each other's analytics in their applications.

Essential to the UIMA Specification is its independence of any particular
domain-level data model that may describe some set of annotation types.  These
types vary widely and cover a potentially infinite space of concepts and
relationships. Domain- level models may for example include  "persons",
"places", and "things" or "noun phrases" and "verb phrases" or "events",
"opinions", "sentiments" and "temporal relations" or "chemical names" and
"chemical reactions," etc. 

The UIMA Specification therefore proposes a general and expressive underlying
representation scheme based on object modeling standards and represents
annotations as "stand-off" 
labels over regions of the unstructured content. Regions may, of course, include
entire documents, segments or even collections thereof.

"Stand-off" means that metadata elements that label regions of content are
represented as objects in an object model that "point into" the unstructured
content (e.g., document or video stream) rather than "insert" some type of tag
or marker directly into the content changing its original form. In UIMA the
original content is not affected in the analysis process.  Rather, an object
graph is produced that stands off from and annotates the content. 
Stand-off annotations allow for multiple content interpretations of graph
complexity to be produced, co-exist, overlap and retracted without affecting the
original content representation. 

The object model representing the stand-off annotations may be used to produce
different representations of the analysis results. A common form for capturing
document metadata for example is as in-line XML.  An analytic in a UIM
application, for example, can generate from the UIMA representation an in-line
XML document that conforms to some particular domain model or markup language.

XML tag sets and other data models
-----------------------------------
The UIMA specification is NOT focused on proposing any particular data model
that a set of analytics may use to implement their metadata. Domain-level tag
sets, markup languages or data models are all orthogonal and complementary to
the UIMA specification. 
For example, there are multiple efforts to produce XML standards around text,
voice and video analysis (e.g., VoiceXML, MPEG-7, LegalXML). These efforts
address the definition of specific models for annotating unstructured
information that may be represented as UIMA Type Systems using UML for example. 

UIMA is intended to address a standard focused on supporting the development,
discovery and composition of analysis operations that may process combinations
of all sorts of unstructured information independently of the type of content or
the metadata model that may describe it.

UIMA focuses on how to characterize data and operations that describe and act on
the unstructured content so that they may be discovered and composed to
efficiently perform aggregate analysis tasks. The output of any analysis process
on unstructured information may be ultimately mapped to any one of these
modality and/or domain specific XML-based standards.

Document Structure and Operations
-----------------------------------
UOML (http://www.oasis-
open.org/events/symposium_2006/slides/Wang.pdf), as an example, proposes
standard definitions for the abstract structure of text documents and for a
basic set of operations for manipulating the defined structure (e.g., get, set,
insert, delete).  

The UIMA specification is independent of any particular model for the structure
of a document and does not define operations for manipulating any particular
unstructured content.  Rather UIMA provides a common way based on existing
standards (e.g., UML, XMI, OCL) for analytic developers to exchange arbitrary
models of unstructured content and to describe analytic behaviors based on what
metadata they may inspect and produce about that content.
 
===========================================================
2. Optionally, a list of contributions of existing technical work that the
proposers anticipate will be made to this TC.
===========================================================
1. IBM Research Report based on the UIMA project entitled "Towards an
Interoperability Standard for Text and Multi-Modal Analytics" 

2. The UIMA Java SDK and User Manual
(http://www.alphaworks.ibm.com/tech/uima)
Open-Source UIMA Java Framework Javadocs (http://uima-
framework.sourceforge.net/) help provide examples about how concepts in UIMA can
and have been implemented.

===========================================================
3. Optionally, a proposed working title and acronym for the
specification(s) to be developed by the TC.
===========================================================

UIMA Specification

===========================================================
4. The date, time, and location of the first meeting, whether it will be held in
person or by phone, and who will sponsor this first meeting. The first meeting
of a TC shall occur no less than 30 days after the announcement of its formation
in the case of a telephone or other electronic meeting, and no less than 45 days
after the announcement of its formation in the case of a face-to- face meeting.
===========================================================

Date: November 20, 2006
Time: 10:00 AM Eastern
Duration: 4 Hours
Mode: Teleconference
Number: 
	Toll-free dial-in: 1-877-421-0018
	Toll/International dial-in:  1-770-615-1379
	Participant passcode:  150392
Sponsor: IBM

===========================================================
5. The projected on-going meeting schedule for the year following the formation
of the TC, or until the projected date of the final deliverable, whichever comes
first, and who will be expected to sponsor these meetings.
===========================================================

Bi-weekly 90 Minute Teleconferences sponsored by IBM.

===========================================================
6. The names, electronic mail addresses, and membership affiliations of at least
Minimum Membership who support this proposal and are committed to the Charter
and projected meeting schedule
===========================================================

1. David Ferrucci, ferrucci@us.ibm.com, IBM 2. Eric Nyberg, ehn@cs.cmu.edu, CMU
3. Pascal Coupet, pascal.coupet@temis.com, TEMIS 4. Thomas Hampp,
thomas.hampp@de.ibm.com, IBM 5. Alex Rankov, Rankov_Alex@emc.com, EMC Others TBD

===========================================================
7. The name of the Convener who must be an Eligible Person.
===========================================================

Convener: David A. Ferrucci



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]