Hi. A couple notes of clarification: KITE (which is part of the SUKI suite of tools) was built to interoperate with UIMA from the beginning, but many aspects of it (and other SUKI components) are not as tightly integrated with UIMA as we would like. For example, much of it was built before the UIMA API's for custom flow-controllers had been exposed, so it has its own mechanisms for controlling flow that are inconsistent with UIMA's approach. We would probably want to address these issues before we would release these components as open source. Even if we were not going to do that, we would at least need to deal with documentation, packaging, code review, etc. before we could issue a release. We drew up a project plan for doing so, but unfortunately our research group has run into other urgent priorities, so I would not expect us to complete that any time in the foreseeable future. The direct link for papers describing SUKI (including KITE) and related issues is http://www.research.ibm.com/UIMA/SUKI/.

In another message in this thread (q.v.) Adam discusses converting between OWL and UIMA type systems via ECore and the IODT toolkit. I have tried this, and it can be done. However, in practice it tends to be much less useful than you might think. The design criterion for UIMA type systems and OWL ontologies tend to be very different. UIMA type systems are essentially object-oriented programming data structured designed for convenient creation and manipulation; in addition, UIMA types are generally expected to be metadata about a specific artifact such as a text document. In contrast, OWL ontologies are intended to support reasoning, usually about "the real world" rather than some unstructured source that depicts the world. The ways people go about designing such things tends to be very different. Thus if you take an OWL ontology that was written to be an OWL ontology and automatically translate it into a UIMA type system, you generally get a type-system that is very clumsy and inefficient to populate and manipulate. In addition (as noted in the original message) OWL is much more expressive in many respects (e.g., multiple inheritance, inferred type membership, etc.), so many of the interesting aspects of the OWL ontology gets lost. Converting the other direction also rarely seems useful; if you take a type system from a typical complex UIMA application and convert it into OWL, you wind up with something that is generally completely unsuited to whatever reasoning tasks you would want to do with OWL. Of course, there may be advantages to such an automatic conversion despite these concerns; for example, you mention using Protégé as an editor for UIMA type systems, which seems like it would work fine as long as you are careful to avoid the aspects of OWL that won't translate.

In our work on SUKI, we generally went a different way. In particular, we typically assumed that a UIMA type system and an OWL ontology were developed separately, typically by different people with different sorts of goals. Our goal was to be able to create instances encoded in the OWL ontology from extracted instances encoded in the UIMA type system. We did this using a combination of both generic and special-purpose mapping components, integrated using KITE. This allowed us to do OWL-based reasoning over the results of our UIMA-based information extraction. Some discussion of this process is found in:

Towards Knowledge Acquisition from Information Extraction. Christopher Welty and J. William Murdock. Proceedings of the 5th International Semantic Web Conference (ISWC'06), Athens, GA. 2006.

A link to that paper is available on the SUKI page, linked above.

--
Bill Murdock, PhD
UIMA User (but not a UIMA developer or official spokesperson)
IBM Watson Research Center
19 Skyline Dr., Hawthorne, NY  10532  USA
http://bill.murdocks.org


[EMAIL PROTECTED] wrote:
Thomas,


Check out these projects from IBM Research: http://bill.murdocks.org

Especially look at the KITE and SUKI projects.

The was talk at one point about re-implementing these on top of UIMA and 
open-sourcing them, but that was over a year ago and I haven't heard about any 
progress toward that.


Greg Holmberg



 -------------- Original message ----------------------
From: Thomas Francart <[EMAIL PROTECTED]>

Defining a type system in UIMA looks very much like defining an (simple) OWL 
ontology (http://www.w3.org/TR/owl-ref/). I was just wondering if there have 
been any effort into developping something that could make a connection between 
a UIMA type system and an OWL ontology ? (like generating OWL from a type 
system or vice versa)

------------------------------------------------------------------------

Subject:
UIMA type systems and OWL ontologies
From:
Thomas Francart <[EMAIL PROTECTED]>
Date:
Fri, 21 Sep 2007 16:20:33 +0000
To:
[email protected]

To:
[email protected]



Hi

Defining a type system in UIMA looks very much like defining an (simple) OWL ontology (http://www.w3.org/TR/owl-ref/). I was just wondering if there have been any effort into developping something that could make a connection between a UIMA type system and an OWL ontology ? (like generating OWL from a type system or vice versa)

I can see a couple of advantages to this :

- Users defining their type systems could instead define an ontology using existing visual editors like protégé or swoop - OWL adds a lot more constraints than a UIMA type system - these constraints need be completely implemented in UIMA, but at least some simple ones, like cardinalities - OWL uses RDF datatypes (String, booleans, times, etc.) onto which UIMA could build, instead of redefining its own datatypes
    - etc.

Thoughts ? comments ?

Cheers,
Thomas

--
Thomas Francart
Mondeca
3, cité Nollez 75018 Paris France
Tel: +33 (0)1 44 92 35 04 - Fax: +33 (0)1 44 92 02 59
Blog: mondeca.wordpress.com <http://mondeca.wordpress.com>
Web: www.mondeca.com <http://www.mondeca.com>
Mail: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>

Reply via email to