RE: UIMA in EU projects?

2013-01-07 Thread Torsten Zesch
Excitement
http://www.excitement-project.eu/
uses UIMA for preprocessing.

-Torsten

-- 

Dr. Torsten Zesch
Senior Researcher
UKP Lab, Web Research Darmstadt (WeRC)
Technische Universität Darmstadt
Hochschulstr. 10, D-64289 Darmstadt, Germany
phone [+49] (0)6151 16-5420, fax -5455, room S2/02/B107
ze...@ukp.informatik.tu-darmstadt.de
www.ukp.tu-darmstadt.de www.werc.tu-darmstadt.de

Associated Researcher
German Institute for International Educational Research
 


> -Original Message-
> From: Jens Grivolla [mailto:j+...@grivolla.net]
> Sent: Monday, January 07, 2013 12:18 PM
> To: user@uima.apache.org
> Subject: UIMA in EU projects?
> 
> Hi,
> 
> I would like to find some references to the use of UIMA in EU funded
> projects. Looking in Cordis and on the "Powered by Apache UIMA" page I
> found the TTC project. Are any other uses related to EU projects?
> 
> Thanks,
> Jens



Re: Sessions

2013-01-07 Thread Richard Eckart de Castilho
Am 07.01.2013 um 14:57 schrieb "Kline, Larry D" :

> The reason I want to use a session object to store my properties is that
> the API says these sessions are per client.  My UIMA app is running in a
> JBoss container that is accessed by a web service call.  So multiple
> clients could be accessing it simultaneously, each one passing slightly
> different parameters.  In the web service method I do this:
> 
>   protected AnalysisEngine recognitionAE;
>   ...
>   
> recognitionAE.getUimaContext().getSession().put(STEMMER_KEY_NAME,
> stemmerAlgorithmKey);
> 
> Then later in my custom flow controller I want to get this property and
> use it to control the flow.
> 
> I'm not familiar with the external resource support.  Can I do something
> similar using that?


The external resource mechanism allows you to share an object between UIMA 
components. You tell UIMA how to instantiate this object as part of your 
analysis engine description (or aggregate AE description). The object is 
instantiated once per UIMA root context, so should have the same scope as the 
session. I have no idea if external resources can be accessed from a 
FlowController. 

Your concept of "client" and that used in the documentation of the session may 
be slightly different. I am pretty sure the session documentation refers to a 
UIMA deployment which is distributed on a network. Every node (client) in that 
network, e.g. every UIMA-AS deployment, has its own session - they are not in 
any way synchronized across the network.

In your case, to make sure a session (or external resource below) is not shared 
between clients accessing your web application, you need to make sure that your 
recognitionAE instance is not shared between web clients - or put it otherwise 
- it is not thread-safe when you store data in the session.

I'd probably create a new UIMA type which holds such information and add it to 
the CAS. That way, the CAS has some metadata on how it was processed and it can 
be accessed by the FlowController. This also restores the thread-safety and if 
your annotator is programmed in a thread-safe way, you can instantiate it once 
and share it between all your clients. Since the instantiation of an analysis 
engine can be a costly process, you may want to consider that.

Cheers,

-- Richard

-- 
--- 
Richard Eckart de Castilho
Technical Lead
Ubiquitous Knowledge Processing Lab (UKP-TUD) 
FB 20 Computer Science Department  
Technische Universität Darmstadt 
Hochschulstr. 10, D-64289 Darmstadt, Germany 
phone [+49] (0)6151 16-7477, fax -5455, room S2/02/B117
eck...@ukp.informatik.tu-darmstadt.de 
www.ukp.tu-darmstadt.de 
Web Research at TU Darmstadt (WeRC) www.werc.tu-darmstadt.de
---



RE: Sessions

2013-01-07 Thread Kline, Larry D
Thanks for the suggestion.  I ended up casting like this:

FlowControllerContext_impl fcContext =
(FlowControllerContext_impl)getContext();

This is in my custom flow controller, so getContext() is a superclass
(FlowController_ImplBase) method.

The reason I want to use a session object to store my properties is that
the API says these sessions are per client.  My UIMA app is running in a
JBoss container that is accessed by a web service call.  So multiple
clients could be accessing it simultaneously, each one passing slightly
different parameters.  In the web service method I do this:

protected AnalysisEngine recognitionAE;
...

recognitionAE.getUimaContext().getSession().put(STEMMER_KEY_NAME,
stemmerAlgorithmKey);

Then later in my custom flow controller I want to get this property and
use it to control the flow.

I'm not familiar with the external resource support.  Can I do something
similar using that?

Thanks,
Larry

-Original Message-
From: Burn Lewis [mailto:burnle...@gmail.com] 
Sent: Friday, January 04, 2013 8:26 PM
To: user@uima.apache.org
Subject: Re: Sessions

With a cast I think you can get the root context and use its session
object.

Session rootSession =
((UimaContextAdmin)aContext).getRootContext().getSession();

Note that the the Javadocs say developers should not use this interface!
It may be preferable to use the external resource support to share a map
amongst annotators.




On Fri, Jan 4, 2013 at 11:22 AM, Eddie Epstein 
wrote:

> I am not 100% sure here, but think that an analytic's UimaContext is 
> fixed after the component has been instantiated. For dynamic control 
> of processing, the flow controller could use something outside of the 
> UIMA framework, or the analytic read a control key put in the CAS 
> itself.
>
> Eddie
>
> On Thu, Jan 3, 2013 at 12:20 PM, Kline, Larry D 
>  wrote:
> > I have a remotely deployed uima application (running in jboss and 
> > using a pear file) that has a web service front end.  One of the web

> > service methods sets a value into the uima session.
> >
> >
> >
> > recognitionAE.getUimaContext().getSession().put("g2_stemmer",
> > stemmerAlgorithmKey);
> >
> >
> >
> > Then I would like to get that value in a user defined flow
controller.
> > But in the flow controller I execute this:
> >
> >
> >
> > fcContext = getContext(); // this is

> > a FlowController method
> >
> > String stemmer = 
> > (String)fcContext.getSession().get(STEMMER_KEY_NAME);
> >
> >
> >
> > And I get a different session object.  Is there some way to get the 
> > root session object?
> >
> >
> >
> > Thanks,
> >
> > Larry
> >
> > The contents of this electronic mail message and any 
> > attachments
> are confidential, possibly privileged and intended for the 
> addressee(s) only.Only the addressee(s) may read, disseminate, 
> retain or otherwise use this message. If received in error, please 
> immediately inform the sender and then delete this message without 
> disclosing its contents to anyone.
>
The contents of this electronic mail message and any attachments are 
confidential, possibly privileged and intended for the addressee(s) 
only.Only the addressee(s) may read, disseminate, retain or otherwise use 
this message. If received in error, please immediately inform the sender and 
then delete this message without disclosing its contents to anyone.



Re: ConceptMapper dictionary entry variant

2013-01-07 Thread Michael Tanenblatt
There are a few ways this can be done, depending on your needs. 

1. Set the "ResultingAnnotationMatchedTextFeature" parameter in the descriptor. 
This should be the name of a String feature in your result annotation (e.g., 
DictTerm is used in the distributed example). In the resulting annotation 
instance, it will be filled with actual text that was matched in input document.

2. Set the "MatchedTokensFeatureName"parameter in the descriptor. This should 
be the name of an FSArray feature in your result annotation, and will be filled 
with tokens matched in input document.

3. Add some other indicator into your dictionary (e.g., a simple unique 
identifier for each variant, or perhaps an id for the parent and one for the 
variant--depends on your needs). Then use the fact that you can map any 
attribute in the dictionary into the resulting annotation by setting up the 
parameters "AttributeList" and "FeatureList". 

Let me know if this make sense, or if you need more information. Looking back 
at the documentation, I can see that things really need to be clarified a 
lot--sorry!



On Jan 4, 2013, at 3:06 PM, "Kline, Larry D"  wrote:

> Is there some way in the ConceptMapper to propagate the actual variant
> text that matched the document text into the annotation that is created
> for the match.  I don't even see the variant information in the
> DictinaryResource.DictEntry class, just the base concept information.
> 
> The contents of this electronic mail message and any attachments are 
> confidential, possibly privileged and intended for the addressee(s) 
> only.Only the addressee(s) may read, disseminate, retain or otherwise use 
> this message. If received in error, please immediately inform the sender and 
> then delete this message without disclosing its contents to anyone.



Re: UIMA in EU projects?

2013-01-07 Thread Tommaso Teofili
Hi Jens,

back in 2009 I did a small presentation about UIMA and semantic search [1]
for IKS EU project [2].
IKS then promoted the creation of the Apache Stanbol project [3] (which
basically contains almost the entire codebase for the project) which also
integrates Apache UIMA [4][5].

Hope this helps,
Tommaso

[1] : http://uima.apache.org/iks09.html
[2] : http://www.iks-project.eu
[3] : http://stanbol.apache.org
[4] : http://blog.iks-project.eu/uima-apache-stanbol-integration/
[5] : http://blog.iks-project.eu/uima-apache-stanbol-integration-2/


2013/1/7 Diman Karagiozov 

> Hi there,
>
> we are using UIMA in the ATLAS EU project ( http://www.atlasproject.eu/).
>
> greetings
> Diman Karagiozov
>
>
> On 01/07/2013 01:18 PM, Jens Grivolla wrote:
>
>> Hi,
>>
>> I would like to find some references to the use of UIMA in EU funded
>> projects. Looking in Cordis and on the "Powered by Apache UIMA" page I
>> found the TTC project. Are any other uses related to EU projects?
>>
>> Thanks,
>> Jens
>>
>>
>


Re: UIMA in EU projects?

2013-01-07 Thread Diman Karagiozov

Hi there,

we are using UIMA in the ATLAS EU project ( http://www.atlasproject.eu/).

greetings
Diman Karagiozov

On 01/07/2013 01:18 PM, Jens Grivolla wrote:

Hi,

I would like to find some references to the use of UIMA in EU funded 
projects. Looking in Cordis and on the "Powered by Apache UIMA" page I 
found the TTC project. Are any other uses related to EU projects?


Thanks,
Jens





UIMA in EU projects?

2013-01-07 Thread Jens Grivolla

Hi,

I would like to find some references to the use of UIMA in EU funded 
projects. Looking in Cordis and on the "Powered by Apache UIMA" page I 
found the TTC project. Are any other uses related to EU projects?


Thanks,
Jens



UIMA for multimodal annotation?

2013-01-07 Thread Jens Grivolla

Hi,

we're thinking of using UIMA for multimodal multimedia annotation (text, 
video, audio, ...), but have found little information of people actually 
doing that. I did find an old post by Burn Lewis about donating the GALE 
type system ("Donation of a widely used type system for multi-modal text 
analysis") but not much more.


Thanks,
Jens